Articulo de referencia

Medición de la respuesta de la aplicación

La Medición de la Respuesta de la Aplicación ( ARM , por sus siglas en inglés) es un estándar abierto publicado por The Open Group para la monitorización y el diagnóstico de cue...

La Medición de la Respuesta de la Aplicación ( ARM , por sus siglas en inglés) es un estándar abierto publicado por The Open Group para la monitorización y el diagnóstico de cuellos de botella de rendimiento en aplicaciones empresariales complejas que utilizan diseños débilmente acoplados o arquitecturas orientadas a servicios .

Incluye una API para C y Java que permite registrar en un servidor remoto la información de temporización asociada a cada paso del procesamiento de una transacción para su posterior análisis.

Historia

La versión 1 de ARM fue desarrollada conjuntamente por Tivoli Software y Hewlett-Packard en 1996. La versión 2 fue desarrollada por una colaboración industrial (el Grupo de Trabajo de ARM) y se publicó en diciembre de 1997 como un estándar abierto aprobado por el Open Group . ARM 4.0 se lanzó en 2003 y se revisó en 2004.

A partir de 2007ARM 4.1 versión 1 es la versión más reciente del estándar ARM.

Introducción

El diseño actual de las aplicaciones tiende a ser más complejo y distribuido en redes. Esto plantea nuevos desafíos para las herramientas de desarrollo y monitorización actuales, que deben proporcionar a los desarrolladores, administradores de sistemas y de aplicaciones la información que necesitan.

En las aplicaciones distribuidas no es fácil estimar si la aplicación funciona correctamente. Los siguientes aspectos ayudan en la evaluación de aplicaciones distribuidas:

  • ¿Están teniendo éxito las transacciones comerciales y, si no es así, cuál es la causa del fracaso?
  • ¿Cuál es el tiempo de respuesta de una transacción?
  • ¿Dónde se producen los cuellos de botella? ¿Qué subtransacción podría causar un cuello de botella?
  • ¿Qué transacciones se ejecutan en una aplicación y cuántas?
  • ¿Cómo optimizar una aplicación o su entorno para mejorar su rendimiento?

ARM ayuda a responder estas preguntas. Es importante mencionar que las ventajas de ARM, tal como se definen aquí, son solo un subconjunto del ámbito de la gestión del rendimiento de las aplicaciones .

Acercarse

El enfoque principal para usar ARM es:

  1. Defina las transacciones comerciales y técnicas que sean de interés.
  2. Inserte llamadas a la interfaz ARM en la aplicación para medir estas transacciones definidas.
  3. Implemente la aplicación instrumentada en su entorno habitual con un agente ARM instalado.
  4. La implementación ARM utilizada ahora proporciona las mediciones de transacciones de interés.

Conceptos

ARM define los siguientes conceptos para proporcionar la funcionalidad descrita.

Aplicación ARM

Las aplicaciones distribuidas complejas suelen constar de numerosas aplicaciones individuales (procesos). Para comprender la relación entre todas estas aplicaciones, se introdujo el concepto de aplicación ARM con la versión 4.0 del estándar ARM. Cada transacción ARM se ejecuta dentro de una única aplicación ARM.

Transacción ARM

Las transacciones son el concepto principal del estándar ARM y representan una única medida de rendimiento. La definición de una transacción especifica el tipo (nombre) y los atributos adicionales de una transacción ARM. Una transacción puede ejecutarse (iniciarse y detenerse) varias veces, lo que genera múltiples mediciones. Cada medición tiene atributos básicos como el estado de finalización (correcto, fallido, abortado), la marca de tiempo de inicio y detención, la duración resultante y la dirección del sistema (host) en la que se ejecutó. Además, se pueden asociar métricas especiales o propiedades de contexto a una medición de transacción.

Dirección del sistema ARM

Define de forma unívoca un host mediante su nombre, dirección IP u otra información única.

Correlador ARM

Los correladores ARM se utilizan para expresar una correlación entre dos transacciones ARM. Esta es una relación síncrona, también conocida como relación padre-hijo. Generalmente, una transacción padre desencadena una transacción hija y solo continúa su ejecución cuando la transacción hija ha finalizado. Mediante los correladores, es posible dividir una transacción compleja en varias transacciones hijas anidadas, donde cada transacción hija puede tener sus propias transacciones hijas. Esto da como resultado un árbol de transacciones, donde la transacción padre superior es la raíz del árbol.

ARM 4.1 define relaciones asíncronas para admitir arquitecturas basadas en el flujo de datos.

Métrica ARM

Las métricas de ARM se pueden usar para obtener más información sobre la ejecución de una transacción. ARM define un conjunto de tipos de métricas para diferentes propósitos, como un contador, un indicador o simplemente un valor numérico.

Propiedades ARM

Las propiedades son un conjunto de cadenas de pares nombre-valor que califican una transacción ARM o una aplicación ARM más allá de la definición básica de estas entidades y permiten asociar información de contexto adicional a cada medición de la transacción.

usuario de ARM

Define el nombre de un usuario en nombre del cual se ejecutó una medición de transacción.

Aplicaciones instrumentadas ARM

Las siguientes aplicaciones ya están instrumentadas con llamadas ARM:

Referencias

  1. "Módulo Apache ARM 4.0" . Httpd.apache.org . Consultado el 20 de mayo de 2012 .
  2. "Módulo Apache ARM 4.0 modificado para entornos productivos" . Myarm.com. 13 de junio de 2011. Archivado del original el 3 de marzo de 2012. Consultado el 20 de mayo de 2012 .
  3. "Extensión npARM xpcom para Mozilla Firefox" . Myarm.com. 26 de noviembre de 2011. Archivado del original el 3 de marzo de 2012. Consultado el 20 de mayo de 2012 .
  4. "Transacciones ARM de WAS v6.1" . Publib.boulder.ibm.com. 4 de abril de 2012. Consultado el 20 de mayo de 2012 .
  5. "Habilitación de ARM en un servidor HTTP" . Publib.boulder.ibm.com . Consultado el 20 de mayo de 2012 .
  6. http://publib.boulder.ibm.com/infocenter/eserver/v1r2/topic/ewlminfo/eicaaarmdb2.html
  7. 1 2 "ARM - Preguntas frecuentes" . support.sas.com . Consultado el 17 de marzo de 2024 .
  8. "Uso de la interfaz SAS 9.2 ARM con aplicaciones ARM existentes: Descripción general de la interfaz SAS 9.2 ARM con aplicaciones SAS existentes" . Support.sas.com. 27 de mayo de 2010. Consultado el 20 de mayo de 2012 .
  • Sitio web oficial de ARM y SDK de código abierto de Open Group
  • Implementación de código abierto de Open-ARM para ARM4 en Java
  • MyARM Implementación de C/C++, Java, C# .NET y Python totalmente compatible con ARM 4.0 y una edición comunitaria gratuita.