Você está na página 1de 27

Metodologa GRA

Gestin del Rendimiento de Aplicaciones


APM
Carlos Vargas - Espaa
Enero, 2015

ndice
Gestin del Rendimiento de las Aplicaciones (APM)
Medicin del Rendimiento de las Aplicaciones APM
Metodologa APM
Herramientas de Soporte APM
Cuadrantes Mgicos

2015 Carlos Vargas. All rights reserved.

Page 2

Gestin del Rendimiento de Aplicaciones


APM

Las empresas tienen que conocer:


La perspectiva de los clientes y usuarios debido al rendimiento de las
aplicaciones.
Cmo se ven impactados los clientes, los usuarios y las empresas por el
rendimiento de las aplicaciones.
Cules clientes y usuarios son afectados.
Cuntas y qu transacciones fueron exitosas fallaron.
Qu significa desempeo lento para los procesos de negocio.

Cunto estn costando a las empresas las incidencias y el bajo rendimiento de


las aplicaciones.
Por cunto tiempo se ha mantenido este escenario.
Las reas crticas de las empresas que estn teniendo el nivel de servicio
requerido.
Cuntos clientes y usuarios continan han dejado de utilizar los servicios.

2015 Carlos Vargas. All rights reserved.

Page 3

Gestin del Rendimiento de Aplicaciones


APM

Diferentes perspectivas del rendimiento


Gerentes
Se logra el retorno de la
inversin sobre tecnologa
orientada por los servicios
pblicos y su optimizacin.

Usuarios/Clientes
Obtienen satisfaccin y logro
de sus objetivos con una
aplicacin
que
les
da
respuesta en el tiempo
esperado.

2015 Carlos Vargas. All rights reserved.

Arquitectos de
Software/Desarrolladores
Se logra la productividad, y se
orienta el desarrollo de
aplicaciones por la eficiencia
del desempeo.

Responsables de Infraestructura
Se logra la eficiencia en costos
travs de la optimizacin de la
infraestructura.
Directores
Se logra la eficiencia de los
servicios al usuario y su
mejora continua.

Page 4

Medicin del Rendimiento de Aplicaciones


El reto de TI

Donde estn los problemas?, TI necesita saber qu est fallando


SAP

Servidor de Autenticacin

PSFT

Es posible encontrar rpidamente el problema?


Se lleva registro de las acciones?
El servicio de
autenticacin
est lento?

Las aplicaciones
responden lento?

Cul es el
tiempo de
respuesta del
Mainframe?

Aplicaciones

Base de Datos

Cul es el WebServers
estado de los
WebServers?

Mainframe

Las transacciones estn fallando?


Los clientes/usuarios estn siendo afectados?
Las aplicaciones de
terceros estn
cumpliendo los
SLAs?
Aplicaciones de Terceros

2015 Carlos Vargas. All rights reserved.

WebServices

Estn habilitados los


WebServices?
Base de Datos

Cul es la respuesta de
las BDs?
Page 5

Medicin del Rendimiento de Aplicaciones


El reto de TI

Las causas ms frecuentes de los problemas de rendimiento en


las aplicaciones son:
Errores de programacin
Problemas de configuracin y ajuste
Arquitectura
Conexin a Base de Datos
Problemas de Diseo
Lagunas de Memoria
Clculos errneos de las capacidades
del Sistema
Incidentes en la MVJ
Condiciones de desbordamiento de
Memoria
Ancho de banda atrs del cortafuegos
Procesos huerfanos
Problemas de conector (JCA/JDBC)
Conexin a Mainframes
Conexin a aplicaciones de terceros
Fallos de Hardware
Errores del SO
Instrusin,
Virus, Hackers
2015 Carlos Vargas. All rights reserved.

13.7%
11.9%
10.4%
9.9%
9.0%
7.1%
6.5%
5.3%
5.1%
3.6%
3.3%
3.3%
3.0%
2.7%
2.1%
2.0%
1.2%

El cdigo causa errores slo en


una de ocho veces
Las conexiones del sistema y las
condiciones del entorno son
generalmente las causas de los
problemas de rendimiento

Page 6

Medicin del Rendimiento de Aplicaciones


El reto de TI

Gestin del rendimiento, experiencia de usuario Monitorizacin de


Aplicaciones
Base de Datos, WebServices,
Sistemas Back-end,
Disponibilidad, Rendimiento,
Errores, SLAs

SAP

Servidor de Autenticacin

PSFT

Aplicaciones

Base de Datos
WebServers
Mainframe

Experiencia del Cliente,


Tasas de Transacciones
Exitosas, Errores, Fallos,
Defectos, SLAs, Costos,
Impacto

JEE/.NET, Disponibilidad,
Rendimiento, Transacciones
Fallidas, Errores, SLAs,
Registro de Transacciones

WebServices

Base de Datos
Aplicaciones de Terceros

2015 Carlos Vargas. All rights reserved.

Page 7

Metodologa APM
Definicin de criterios y objetivos de rendimiento
Gestin de escenarios de rendimiento
Seleccin herramientas para gestin de rendimiento
Desarrollo de modelos de rendimiento
Ejecucin del plan de rendimiento

2015 Carlos Vargas. All rights reserved.

Page 8

Metodologa APM

Definicin de criterios y objetivos de rendimiento

Objetivo
Definir los criterios contra los que se llevar a cabo la medicin del
rendimiento, y establecer los objetivos esperados

Proceso
Identificacin del
Alcance de las
aplicaciones

Definicin del
Modelo de
Evaluacin de
Criterios

Definicin de
Criterios de
Rendimiento

Formulacin de los
Objetivos de
Rendimiento

2015 Carlos Vargas. All rights reserved.

Definicin de
Mtricas de
Rendimiento contra
Objetivos

Page 9

Metodologa APM

Definicin de criterios y objetivos de rendimiento

Roles
Responsable de arquitectura, anlisis y pruebas.

Actividades

Anlisis de la Arquitectura Funcional y Tcnica de las Aplicaciones


Identificacin del Alcance de las aplicaciones
Identificacin y Definicin de Objetivos de Rendimiento
Identificacin y Definicin de Criterios de Rendimiento
Definicin de Mtricas de Rendimiento contra Objetivos
Definicin del Modelo de Evaluacin de Criterios

Entregables
Informe de Alcance Objetivos de Rendimiento
Lista de Criterios de Rendimiento
Proceso de Medicin de Criterios de Rendimientos
2015 Carlos Vargas. All rights reserved.

Page 10

Metodologa APM

Gestin de escenarios de rendimiento

Objetivo
Identificacin, documentacin de los escenarios crticos de
rendimiento, as como la clasificacin y priorizacin de estos
escenarios de acuerdo a los criterios definidos.

Proceso
Definicin del
Modelo de
Escenarios de
Rendimiento

Definicin
Detallada de los
Escenarios
Identificados

Identificacin de
Riesgos
Potenciales

2015 Carlos Vargas. All rights reserved.

Generacin de
Modelos Anlisis
de Impacto

Clasificacin de
los Escenarios
de Acuerdo a los
Criterios
Definidos

Desarrollo de
Estrategias de
Mitigacin y
Contingencia

Page 11

Metodologa APM

Gestin de escenarios de rendimiento

Roles
Responsable de arquitectura, anlisis y pruebas.

Actividades

Definicin del Modelo de Escenarios de Rendimiento


Identificacin de Riesgos Potenciales
Identificacin de escenarios de riesgos de rendimiento
Clasificacin y priorizacin de los escenarios de riesgos de
rendimiento
Definicin Detallada de los Escenarios Identificados
Generacin de Modelos Anlisis de Impacto
Desarrollo de Estrategias de Mitigacin y Contingencia

Entregables

Modelos de Gestin de Rendimiento e Impacto


2015 Carlos Vargas. All rights reserved.

Page 12

Metodologa APM

Seleccin de herramientas para gestin de rendimiento

Objetivo
Seleccionar las herramientas optimas para la gestin del rendimiento.

Proceso

Generacin
de criterios
preliminares
de seleccin

Ejecucin de
la evaluacin
conforme los
criterios
detallados

Generacin
de criterios
detallados de
evaluacin

Obtencin de
una lista
tentativa de
productos

2015 Carlos Vargas. All rights reserved.

Implementacin
del ambiente de
evaluacin para
las pruebas

Identificacin
y seleccin
de las
herramientas
finales

Generacin
del informe
de los
resultados
obtenidos

Page 13

Metodologa APM

Seleccin de herramientas para gestin de rendimiento

Roles
Responsable de arquitectura y pruebas.

Actividades

Generacin de criterios preliminares de seleccin de herramientas.


Obtencin de una lista tentativa de productos.
Generacin de criterios detallados de evaluacin.
Implementacin del ambiente de evaluacin para las pruebas.
Ejecucin de la evaluacin conforme los criterios detallados.

Entregables

Informe de los resultados obtenidos de los criterios detallados de la


evaluacin para cada una de las herramientas preliminares.
Identificacin y seleccin de las herramientas finales.

2015 Carlos Vargas. All rights reserved.

Page 14

Metodologa APM

Desarrollo de modelos de rendimiento

Objetivo
Recolectar de forma especfica los datos inciales de una aplicacin,
para establecer su lnea base.

Proceso
Instalacin y
configuracin
herramientas de
rendimiento

Definir lnea
base de las
mtricas y
propiedades

Categorizacin
de
Componentes
por Criterios de
Rendimiento

2015 Carlos Vargas. All rights reserved.

Evaluacin
dependencias
con interfaces
externas

Ejecucin
preliminar para
testeo de los
modelos

Obtencin de
valores de lnea
base para
correlacin de
mtricas y
propiedades.

Page 15

Metodologa APM

Desarrollo de modelos de rendimiento

Roles
Responsable de arquitectura y pruebas.

Actividades

Monitorizar la actividad del usuario a nivel de negocio


Agrupacin de los datos en objetos, por ejemplo, objetos de un pool
de conexiones (tamao inicial, mximo, sesiones, etc)
Diferenciar entre mtricas y propiedades.

Mtrica: series cronolgicas de datos.


Propiedad: atributo del sistema que no cambian con frecuencia.

Controlar los cambios de las propiedades.


Preservar las relaciones con otros objetos.
Permitir la correlacin de los propiedades con la mtrica, de la
mtrica con los propiedades y de las propiedades con las
propiedades.
2015 Carlos Vargas. All rights reserved.

Page 16

Metodologa APM

Desarrollo de modelos de rendimiento

Actividades
Correlacionar la experiencia actual del usuario con el rendimiento de
las aplicaciones
Rastreo de los cambios en las propiedades.
Identificacin de las relaciones con otros objetos.

Entregables
Conjunto de indicadores que permiten la monitorizacin de diferentes
elementos de la aplicacin.

2015 Carlos Vargas. All rights reserved.

Page 17

Metodologa APM

Ejecucin del plan de rendimiento

Objetivo
Identificar y optimizar los puntos crticos de una aplicacin mediante la
ejecucin repetida de los escenarios claves afinando los elementos de
configuracin.

Proceso
Ejecucin de
escenarios de
rendimiento

Afinacin de
elementos de
configuracin

Evaluacin de
resultados

2015 Carlos Vargas. All rights reserved.

Evaluacin de
cumplimiento de
criterios de salida

Generacin de
informe de
resultados

Page 18

Metodologa APM

Ejecucin del plan de rendimiento

Roles
Responsable de arquitectura y pruebas.

Actividades
Crear un entorno de pruebas similar al entorno de produccin.
Crear script de pruebas basados en la experiencia de los usuarios.
Identificar puntos potencialmente de riesgo:
Plataforma.
Dependencias externas.
Carga.

Identificar problemas en el cdigo de la aplicacin (cuellos de


botella).
Priorizar incidentes basados en el impacto

Entregables

Documento de anlisis del rendimiento.


2015 Carlos Vargas. All rights reserved.

Page 19

Metodologa APM

Actores clave y sus acciones

Propietarios de las aplicaciones,


gerentes de servicios

Operaciones

Negocia SLAs con el rea usuaria de los


servicios
Mide la satisfaccin del usuario y de los
procesos de negocio/atencin al ciudadano
Provee Reportes a las gerencias de
servicios y operaciones

Monitorizacin del rendimiento y


disponibilidad de las aplicaciones 24x7
Monitorizacin de SLAs
Deteccin proactiva de incidentes

Especialistas Java/.NET

Soporte de aplicaciones

Anlisis detallado de la infraestructura


Deteccin de componentes responsables
Aislamiento de causas raz

Monitorizacin consistente de punta a punta


Coleccin de evidencias basado en datos
duros
Enrutamiento del problema a la persona
indicada para su resolucin

2015 Carlos Vargas. All rights reserved.

Page 20

Metodologa APM

Actores clave y sus acciones

Propietarios de las aplicaciones,


gerentes de servicios

Operaciones

Negocia SLAs con el rea usuaria de los


servicios
Mide la satisfaccin del usuario y de los
procesos de negocio/atencin al ciudadano
Provee Reportes a las gerencias de
servicios y operaciones

Monitorizacin del rendimiento y


disponibilidad de las aplicaciones 24x7
Evala con precisin el rendimiento de las
aplicaciones, sus caractersticas de
escalabilidad, y confiabilidad antes del
despliegue

Especialistas Java/.NET

Soporte de aplicaciones

Deteccin de componentes responsables


Aislamiento de causas raz
Crea escenarios realistas y reproducibles
de prueba de carga para cubrir los casos de
uso crticos y los requerimientos

Monitorizacin consistente punta a punta


Enrutamiento del problema a la persona
indicada para su resolucin

2015 Carlos Vargas. All rights reserved.

Page 21

Herramientas de Soporte APM


Elementos

Para poder hacer un anlisis apropiado del rendimiento en


aplicaciones, es conveniente distinguir los diferentes elementos
que pueden formar parte de las mismas.

Aplicaciones cliente.

Sistemas de redes.

Servidores de front-end, tales como webservers, firewalls, etc.

Servidores de back-end y elementos de infraestructura tales como


enrutadores, balanceadores, etc.

Procesamiento de transacciones y JVM.


Clusters, mltiples JVM, conexiones internas y externas, transacciones de
negocio y ciclo de vida de componentes.
Bases de datos , anlisis de datos y en almacenamiento.

2015 Carlos Vargas. All rights reserved.

Page 22

Herramientas de Soporte APM


Tipos de herramientas

A continuacin se listan las distintas herramientas que se


requieren de acuerdo a los diferentes elementos mencionados
anteriormente:
1. Herramientas para simulacin de actividades de los clientes y medir los
tiempos de respuesta (pruebas de carga).
Herramientas que muestran el rendimiento de los sistemas a partir de
la perspectiva de cliente (herramientas de gestin del nivel de servicio).
Herramientas de monitoreo de los sistemas cliente.
2. Herramientas de monitorizacin de la red.
3. Herramientas para la medicin de tiempos de solicitud/respuesta de los
servicios y la disponibilidad de la mquina.

2015 Carlos Vargas. All rights reserved.

Page 23

Herramientas de Soporte APM


Tipos de herramientas

4.

Herramientas de monitorizacin a nivel de sistema operativo y


procesamiento de aplicacin.

Monitorizacin de una mquina individual con una sola JVM, desde el nivel
de procesamiento de bytecode hasta el procesamiento de transacciones,
incluyendo la identificacin de conflictos.
Monitorizacin del cluster: monitorizacin de la disponibilidad,
monitorizacin de mltiples JVM, monitorizacin de conexiones internas y
externas, monitorizacin de transacciones de negocio y ciclo de vida de los
componentes.
Monitorizacin de la base de datos: herramientas de anlisis para
identificar problemas y habilidades para alterar la configuracin y otros
valores para resolver los problemas de rendimiento.

2015 Carlos Vargas. All rights reserved.

Page 24

Herramientas de Soporte APM


Herramientas sugeridas

Las herramientas sugeridas para poder llevar a cabo el anlisis del


rendimiento de aplicaciones Java, se clasifican en tres grupos:
1. Load testing: Anlisis, estimacin y medida de la demanda requerida
al sistema vs. su respuesta (p.e. numero de usuarios vs. tiempo de
respuesta de una pgina).
2. Analyzer: Anlisis del consumo de recursos que afectan al rendimiento
de las aplicaciones (p.e. memoria, CPU, IO, threads, interrupciones de
hardware, etc.).
3. Profiler: Anlisis del consumo de los recursos en relacin con la
arquitectura de las aplicaciones (p.e. llamadas del stack, heap,
sesiones, conexiones a base de datos, etc.).

2015 Carlos Vargas. All rights reserved.

Page 25

Herramientas de Soporte APM


Herramientas sugeridas

Herramientas

Load
Testing

Analyzer

LoadRunner

Rational Performance Tester

WebSphere Studio Application Monitor

Profiler

SilkPerformer

JProbe

GroundWork

IntroScope

2015 Carlos Vargas. All rights reserved.

Page 26

Cuadrantes Mgicos
Cuadrante mgico de Gartner

2015 Carlos Vargas. All rights reserved.

Page 27

Você também pode gostar