Herramientas de gestión del rendimiento de aplicaciones (APM)

¿Qué es Application Performance Management (APM)?

Entonces, ¿qué es exactamente APM?

Tradicionalmente, el acrónimo APM se ha utilizado para referirse al término gestión del rendimiento de la aplicación. Sin embargo, en los últimos años, también se refiere, quizás más correctamente, a la supervisión del rendimiento de la aplicación. En términos de Wikipedia, "APM se esfuerza por detectar y diagnosticar problemas complejos de rendimiento de la aplicación para mantener un nivel de servicio esperado".

Echemos un vistazo detallado a lo que realmente es un software de gestión del rendimiento de aplicaciones: APM:

En definición, un Monitor de rendimiento de aplicaciones (sistema APM) permite a las organizaciones monitorear las métricas de rendimiento de sus aplicaciones críticas de negocios, recibir alertas oportunas en caso de problemas de rendimiento y generar informes para análisis de rendimiento periódicos.

Según la firma de analistas de software Gartner, una suite de Application Performance Management (APM) debe cumplir con tres dimensiones funcionales principales:

  • Monitoreo de experiencia digital (DEM)
  • Descubrimiento de aplicaciones, rastreo y diagnóstico (ADTD)
  • Inteligencia artificial para operaciones de TI (AIOps) para aplicaciones

Veamos brevemente cada uno de estos requisitos de herramientas APM:

Monitoreo de experiencia digital (DEM):

Se centra en la experiencia del usuario final según la disponibilidad y el rendimiento de las aplicaciones / servicios comerciales. Comprende el monitoreo real del usuario y el monitoreo de transacciones sintéticas, generalmente utilizando agentes digitales que interactúan con aplicaciones comerciales para recopilar información transaccional.

Descubrimiento, rastreo y diagnóstico de aplicaciones (ADTD):

La parte primaria e inevitable de un sistema de gestión del rendimiento de aplicaciones. Comprende el descubrimiento de aplicaciones y el mapeo de dependencias, el monitoreo de métricas clave y el análisis en profundidad de las transacciones de aplicaciones para identificar los errores de la aplicación. La mayoría de los equipos de TI evalúan las capacidades en este segmento antes de tomar una decisión de compra.

Inteligencia artificial para operaciones de TI (AIOps) para aplicaciones:

La IA en las soluciones APM no es un requisito principal para la mayoría de las organizaciones hoy en día. Sin embargo, una parte importante de este segmento trata con Application Analytics (AA) que es importante. Se compone de alertas de rendimiento y análisis de causa raíz. También incluye el seguimiento de anomalías de rendimiento para transacciones HTTP / S compatibles con servidores de aplicaciones Java y .NET.

Gartner encapsula un software de gestión del rendimiento de aplicaciones (APM) con estas dimensiones. Sin embargo, uno debe darse cuenta de que las necesidades de monitoreo de aplicaciones digitales varían enormemente entre organizaciones y, por lo tanto, los requisitos de administración de aplicaciones se definen de manera diferente en diferentes contextos. Si bien algunas organizaciones se conforman con una combinación de múltiples herramientas para monitorear, alertar e informar, un sistema de administración de rendimiento de aplicaciones ideal presenta una consola unificada para todos los requisitos de monitoreo. Antes de elegir las soluciones de Application Performance Management, los profesionales de TI y DevOps en el ámbito de APM deben analizar a fondo las capacidades específicas que se detallan a continuación para obtener los resultados correctos de rendimiento de la aplicación.

Características clave de las herramientas de gestión del rendimiento de aplicaciones

  1. Amplia gama de aplicaciones compatibles.

    El software de gestión del rendimiento de su aplicación puede supervisar una variedad de aplicaciones y marcos, pero lo más importante es evaluar la herramienta en términos de las necesidades empresariales individuales de la organización. Por ejemplo, la herramienta de gestión del rendimiento de su aplicación podría ayudarlo a controlar su servidor web y las estadísticas de rendimiento de la base de datos subyacente; sin embargo, ¿qué pasa con la gestión interna del rendimiento de las aplicaciones web personalizadas? Una herramienta ideal de gestión del rendimiento de la aplicación debe ser flexible y admitir todos los puntos de contacto monitorizables necesarios en una configuración de TI.

  2. Consola única para monitoreo completo

    Como se mencionó anteriormente, las soluciones ideales de gestión del rendimiento de las aplicaciones deberían incluir los elementos esenciales, es decir, monitoreo completo, alertas e informes exhaustivos, eliminando la molestia de tener que lidiar con múltiples herramientas para medir y optimizar el rendimiento de las aplicaciones.

  3. AGREGAME

    Esta es una característica interesante y inevitable. ADDM se expande a la detección de aplicaciones y la asignación de dependencias . Esto esencialmente significa una cosa simple. La herramienta de gestión del rendimiento de su aplicación no solo debe descubrir automáticamente todas las aplicaciones y servidores en su red, sino que también debe poder clasificarlas (DB, VM, servidores, etc.) y proporcionar al usuario la capacidad de visualizar las interdependencias de las aplicaciones. Esta característica en particular ayuda a ahorrar tiempo que generalmente se desperdicia al tratar de identificar un cuello de botella en una horda de aplicaciones.

  4. Indicadores clave de rendimiento

    Cuando decimos KPI, estamos hablando de métricas como tiempos de respuesta, solicitudes por minuto, detalles de subprocesos y sesiones, utilización de CPU, utilización de disco y memoria, estados de error, etc. Esto incluye el primer conjunto de métricas esenciales de aplicaciones e infraestructura que verifica para medir la eficiencia de tus aplicaciones. El sistema de gestión del rendimiento de su aplicación debe poder presentar estos datos con precisión a intervalos periódicos regulares.

  5. Alertas y acciones automatizadas.

    La alerta es uno de los requisitos principales en las herramientas APM. Los umbrales para estas alertas deben ser configurables para métricas individuales, así como para la aplicación en su conjunto. Estas alertas facilitan una identificación más rápida de los problemas de rendimiento de la aplicación. Sin embargo, estas alertas también deberían poder ejecutar acciones preconfiguradas para una resolución de problemas más rápida. Las notificaciones (SMS, correo electrónico), reiniciar una máquina virtual, ejecutar una operación MBean, generar volcado de montón / volcado de subprocesos / recolección de basura, etc. pueden ser algunos ejemplos de acciones automatizadas.

  6. Conocimientos a nivel de código y seguimiento de transacciones

    La mayoría de las herramientas de gestión del rendimiento de las aplicaciones de red proporcionan visibilidad hasta el nivel del código para ayudar a descubrir problemas que de otro modo pasarían desapercibidos hasta después de que un usuario final lo informe. La solución de gestión del rendimiento de su aplicación de red debería poder tomar instantáneas de los seguimientos de transacciones individuales y permitirle profundizar en las consultas SQL para detectar consultas de ejecución lenta. Su equipo de DevOps probablemente debería poder decir cuán valioso podría ser este tipo de información en la fase de desarrollo de la aplicación.

  7. Monitoreo de la experiencia del usuario final y monitoreo de transacciones sintéticas

    Piensa en estas preguntas por un momento.

    1. ¿Cuánto tiempo lleva cargar su página web / aplicación?
    2. ¿Cuánto tiempo lleva ejecutar la transacción de pago?
    3. ¿Cuánto tiempo lleva enviar un correo electrónico a través de su servidor de correo, etc.?
    4. ¿Cuál es el tiempo que toma hacer una solicitud de búsqueda LDAP?
    5. ¿Cuánto tiempo lleva descargar un archivo adjunto de 1 MB a través del sitio ftp?

    Si el software de gestión del rendimiento de su aplicación de red responde adecuadamente a estas preguntas, tendrá menos quejas de los clientes sobre la prestación del servicio. Con la ayuda de transacciones sintéticas que simulan el comportamiento del usuario en su página web / aplicación, debe poder localizar cualquier discrepancia en su rendimiento (tiempo de carga de la página, errores 404, etc.) antes de implementar sus aplicaciones. Esto también garantiza que el rendimiento de sus aplicaciones una vez implementadas cuando se accede desde diferentes ubicaciones del mundo brinde el mismo rendimiento constante.

  8. Tableros personalizados

    Es increíblemente exhaustivo administrar todas las aplicaciones con el mismo nivel de atención. Imagine tener varios cientos de servidores / aplicaciones agregados a su herramienta de monitoreo; con un tablero organizado que presenta estadísticas como alertas críticas recientes, servidores ocupados, disponibilidad actual de servidores, etc. Sabrá claramente qué servidor necesita su atención primero. Por supuesto, las estadísticas más significativas desde el punto de vista del valor comercial pueden variar entre las organizaciones, razón por la cual el tablero debe ofrecer la flexibilidad de personalización.

  9. Informes

    Los informes son un medio importante para analizar y compartir periódicamente información sobre el rendimiento de sus aplicaciones. Este análisis puede ayudar a identificar servidores infrautilizados y sobreutilizados, comprender las tendencias de rendimiento de las aplicaciones, predecir tendencias futuras basadas en datos históricos y, por lo tanto, planificar la reasignación de recursos y las actualizaciones de infraestructura. Gestión de rendimiento de aplicaciones pequeñas, medianas o empresariales, sin el análisis de aplicaciones correcto, cualquier instancia de APM está incompleta.

  10. Costo y escalabilidad

    Uno de los factores más importantes en la elección de soluciones de gestión del rendimiento de las aplicaciones, casi tan importante (¿o más?) Como sus capacidades, es el precio al que se aplican. Por lo general, con cualquier proveedor, el precio por monitorear una red pequeña de unos pocos cientos de servidores puede no parecer demasiado. Sin embargo, uno debe tener en cuenta los costos eventuales que se sumarán una vez que las organizaciones decidan aumentar su capacidad de infraestructura. ¿El precio de la escala afectará su presupuesto y obstaculizará la transformación digital? Eso vale la pena reflexionar.

    Si bien la mayoría de las herramientas de administración de rendimiento de aplicaciones empresariales cubren varios de los aspectos discutidos en este blog, la solución que mejor se adapta a sus necesidades organizacionales es una que usted mismo ha evaluado en su entorno de monitoreo personalizado. Dicho esto, ManageEngine Applications Manager es una buena solución APM, con todas las capacidades de monitoreo (monitoreo, alertas, informes, paneles, etc.) a un precio increíblemente asequible.

Ellos confían en Applications Manager