adaptacion y mejora continua de la performance de las aplicaciones
DESCRIPTION
Adaptacion y mejora continua de la performance de las aplicacionesTRANSCRIPT
![Page 1: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/1.jpg)
#GX24 #GX24
Adaptación y mejora continua de la performance de las aplicaciones
Simon De Uvarow [email protected]
![Page 2: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/2.jpg)
#GX24
En el ambiente de testing no hay
problemas
Los servidores están sobrados de
recursos
La base tá’ tranquilaza
![Page 3: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/3.jpg)
#GX24
Mantenimiento
Mantenimiento y mejora de la performance de aplicaciones basada en:
• Registro / Bitácora de cambios • Conocimiento del funcionamiento interno de los
componentes utilizados • Monitorización
![Page 4: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/4.jpg)
#GX24
Agenda
• Motivación – Problemas que se presentan en producción
• Conociendo el Sistema – Logs e indicadores disponibles en el ambiente
• Interpretando el Sistema – Herramientas
• Proceso – Proceso de mejora continua
![Page 5: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/5.jpg)
#GX24
Problemas que se presentan en producción
Motivación
![Page 6: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/6.jpg)
#GX24
Mantenimiento en producción
Cambios de personal Cambios en el Hardware Actualizaciones de Sistemas Operativos, Servidores de App, versión del framework, drivers, etc. Nuevas funcionalidades o cambios en existentes Aumento volumen de la base de datos Aumenta la carga del sistema (usuarios usando la app.)
Hay que estar preparados para conocer el impacto de los
cambios, sobre todo los que están fuera de nuestro control
![Page 7: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/7.jpg)
#GX24
Mantenimiento en producción Desde el punto de vista del usuario
El sistema no responde El sistema responde, pero mensajes de error El sistema responde, pero muy “lento”
Desde el punto de vista de infraestructura
“La CPU del servidor nunca sobrepasa el 40% de uso, hay gigas de memoria disponible, y tanto el disco como la red tienen recursos más que sobrados para operar correctamente.” ¿Entonces que pasa? ¿Porqué se cae? ¿Porqué está lento?
Testing no encontró ningún problema
Los servidores están sobrados de
recursos
La base tá’
tranquilaza
![Page 8: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/8.jpg)
#GX24
Mantenimiento en producción
Nos falta información para identificar el problema!
![Page 9: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/9.jpg)
#GX24
Logs e indicadores disponibles en el ambiente
Conociendo el Sistema
![Page 10: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/10.jpg)
#GX24
Herramientas de APM Open Source Licenciadas
Helios OpNet – Riverbed
Moskito AppDynamics
Nagios New Relic
… …
![Page 11: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/11.jpg)
#GX24
Diagrama de Infraestructura
Diagrama de infraestructura + Plan de Monitorización inicial
Balanceador
- Recursos de Sistema Operativo - Access logs con tiempo de Resp. - Logs del balanceador
- Recursos de SO - AccessLogs + TdR - Uso de memoria del proceso - Información de aplicación: Exceptions Logs, GX Managment Enable - Pools - …
- Recursos de SO - Locks / seg - SQLs más lentas
Cluster
App. Server 1 App. Server 2
Apps Apps
![Page 12: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/12.jpg)
#GX24
Logs
![Page 13: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/13.jpg)
#GX24
Logs
![Page 14: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/14.jpg)
#GX24
Interpretando el Sistema
Herramientas para extraer la información dentro de los datos
![Page 15: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/15.jpg)
#GX24
Recursos de SO
Balanceador Cluster
App. Server 1 App. Server 2
Apps Apps
Usuarios Usuarios
ü NMon – NMon Analyzer ü Perfmon – Genera logs y gráficas
![Page 16: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/16.jpg)
#GX24
Access Log Analyzer
Balanceador Cluster
App. Server 1 App. Server 2
Apps Apps
Usuarios Usuarios
![Page 17: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/17.jpg)
#GX24
Access Log Analyzer Observaciones: - Balanceador NO distribuye
equitativamente la carga entre los 2 servidores
- El pico es de casi 6000 pedidos / minuto en los 2 servidores
- Se identifican los momentos de menor carga para aplicar cambios en el ambiente
- La carga en el sistema es similar durante el período monitorizado
![Page 18: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/18.jpg)
#GX24
Access Log Analyzer Observaciones: - Hay excepciones en los servidores
(errores de programas) que llegan al usuario como errores HTTP 500.
- Se llegó a un pico de 140 excepciones en 1 minuto.
![Page 19: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/19.jpg)
#GX24
Access Log Analyzer Otros reportes posibles:
• Top 5, 10, URLs más lentas de cada intervalo • Cantidad de HTTP reqs. Recibidos, agrupados por código de
respuesta • Cantidad de respuestas de cada intervalo, agrupadas por
tiempo de respuesta • Todos los tiempos de resp. de una determinada URL • URLs que más aparecen en el Top de todos los intervalos • …
![Page 20: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/20.jpg)
#GX24
Framework memory usage
Balanceador Cluster
App. Server 1 App. Server 2
Apps Apps
Usuarios Usuarios
ü GCViewer ü IBM Support Assistant + Plugins ü JVisualvm
![Page 21: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/21.jpg)
#GX24
Framework memory usage Observaciones: - Ambos servidores tienen suficiente
memoria para operar. - No se observa degradación en el
uso de la memoria. - Tiempo máximo de GC FULL fue
menor a 1 segundo.
![Page 22: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/22.jpg)
#GX24
+ Herramientas
Existen muchas herramientas para cada tipo de log. En abstracta estamos desarrollando algunas que están liberadas a la comunidad. El código está disponible en GitHub. https://github.com/abstracta/
![Page 23: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/23.jpg)
#GX24
Interpretando el Sistema A corregir - Corregir la programación para que
no lleguen errores HTTP 500 a los usuarios.
- Configurar correctamente el balanceador de carga.
![Page 24: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/24.jpg)
#GX24
Proceso
Proceso de Mejora continua
![Page 25: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/25.jpg)
#GX24
Proceso
Objetivos
Reconocimiento de la infraestructura
Plan de monitorización
Aplicar la monitorización
Análisis de los resultados
Cambios / Correcciones
![Page 26: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/26.jpg)
#GX24
Proceso - Objetivos
¿Qué puedo hacer para mejorar los tiempos de respuesta?
¿Qué recurso está saturado?
¿Cuál es el cuello de botella que me va a impedir escalar en el futuro?
¿Cuántos recursos requiere una aplicación dada determinada carga en
el sistema para responder correctamente?
¿Qué puedo hacer para que consuma menos recursos?
¿Qué puedo hacer para que demore menos?
![Page 27: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/27.jpg)
#GX24
DevOp – Nuevo Rol de IT
Development + Operations + Servicios - Énfasis en la comunicación, colaboración e integración entre
desarrolladores y personal de ambientes o tecnología.
- Objetivos - Analizar resultados de monitorización en conjunto con
tecnología y desarrollo para mejorar la salud de los sistemas - Desarrollo incorpora conocimiento de infra. a sus decisiones - Tecnología adquiere conocimiento de las aplicaciones y sus
requerimientos para sus decisiones
![Page 28: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/28.jpg)
#GX24
Resumen Mantenimiento y mejora de la performance de aplicaciones basada en:
• Conocimiento del funcionamiento interno de los componentes utilizados
• Registro / Bitácora de cambios
• Monitorización
![Page 29: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/29.jpg)
#GX24
Temas relacionados
Hacer pruebas de performance para responder algunas preguntas planteadas en los objetivos de monitorización antes de pasar las aplicaciones a producción. Trabajo en equipo. Son muchos sistemas, son complejos y usan muchas tecnologías / frameworks. Es importante apoyarse en el equipo. Desarrolladores + administradores trabajando juntos.
![Page 30: Adaptacion y mejora continua de la performance de las aplicaciones](https://reader033.vdocuments.co/reader033/viewer/2022060116/55832689d8b42a3c658b52d0/html5/thumbnails/30.jpg)
#GX24
¿Preguntas?