Введение
Стандарт для управления узкими местами Application Response Measurement (ARM) - это открытый стандарт, опубликованный Open Group для мониторинга и диагностики узких мест в сложных корпоративных приложениях, которые используют свободно связанные конструкции или сервисно-ориентированные архитектуры. Он включает в себя API для C и Java, который позволяет регистрировать информацию о времени, связанную с каждым шагом в обработке транзакции, на удаленном сервере для последующего анализа.
Application Response Measurement (ARM) is an open standard published by the Open Group for monitoring and diagnosing performance bottlenecks within complex enterprise applications that use loosely coupled designs or service oriented architectures. It includes an API for C and Java that allows timing information associated with each step in processing a transaction to be logged to a remote server for later analysis.
История
Версия 1 ARM была разработана совместно Tivoli Software и Hewlett Packard в 1996 году. Версия 2 была разработана отраслевым партнерством (рабочей группой ARM) и стала доступной в декабре 1997 года в качестве открытого стандарта, одобренного открытой группой. ARM 4.0 был выпущен в 2003 году и пересмотрен в 2004 году. С 2007 года ARM 4.1 версия 1 является последней версией стандарта ARM.
as of 2007, ARM 4.1 version 1 is the latest version of the ARM standard.
Введение
Современный дизайн приложений, как правило, более сложный и распределенный по сетям. Это приводит к новым вызовам в современных инструментах разработки и мониторинга, чтобы предоставить разработчикам приложений, системным и прикладным администраторам необходимую им информацию. В рамках распределенных приложений нелегко оценить, хорошо ли работает приложение. Следующие вопросы помогают в оценке распределенных приложений: Успешны ли бизнес-транзакции, и если нет, то в чем причина неудачи? Каково время отклика транзакции? Где узкие места, какая суб-транзакция может вызвать узкое место? Какие и сколько транзакций выполняются в приложении? Как настроить приложение или его среду для лучшей работы? ARM помогает ответить на эти вопросы. Важно упомянуть, что преимущества ARM, как они определены здесь, теперь являются лишь подмножеством пространства управления производительностью приложений.
monitoring tools to provide application developers, system and application administrators with the information they need. Within distributed applications it is not easy to estimate if the application performs well. The following issues help in the
evaluation of distributed applications:
Are business transactions succeeding and, if not, what is the cause of failure? What is the response time of a transaction? Where are the bottlenecks, which sub transaction could cause a bottleneck? Which and how many transactions are executed in an application? How to tune an application or its environment to perform better? ARM helps answer these questions. It's important to mention that the ARM benefits as they are defined here are now just a subset of the Application Performance Management space.
Понятия
ARM определяет следующие понятия для обеспечения описанной функциональности.
Заявление на ARM
Сложные распределенные приложения обычно состоят из множества различных отдельных приложений (процессов). Для того, чтобы понять взаимосвязь между всеми отдельными приложениями, концепция приложения ARM вводится в версии 4.0 стандарта ARM. Каждая транзакция ARM выполняется точно в одном приложении ARM.
Сделка ARM
Транзакции являются основной концепцией стандарта ARM и представляют собой единое измерение эффективности. Определение транзакции определяет тип (название) и дополнительные атрибуты транзакции ARM. Транзакция может быть выполнена (начата и остановлена) несколько раз, что приводит к нескольким измерениям. Каждое измерение имеет основные атрибуты, такие как состояние завершения (хорошо, не удалось, прервано), временная метка начала и остановки, получаемая продолжительность и адрес системы (хост), на котором оно было выполнено. Кроме того, специальные метрики или контекстные свойства могут быть связаны с измерением транзакции.
Адрес системы ARM
Уникально определяет хост по его имени, IP-адресу или другой уникальной информации.
Коррелятор ARM
Корреляторы ARM используются для выражения корреляции между двумя транзакциями ARM. Это синхронные отношения, также известные как отношения родителей-детей. Обычно родительская транзакция запускает дочернюю транзакцию и продолжает ее выполнение только после того, как дочерняя транзакция завершена. Используя корреляторы, можно разделить сложную транзакцию на несколько вложенных дочерних транзакций, где каждая дочерняя транзакция может иметь свои собственные дочерние транзакции. Это приводит к дереву транзакций, причем самая верхняя родительская транзакция является корнем дерева. ARM 4.1 определяет асинхронные отношения для поддержки архитектур, управляемых потоком данных.
Метрическая система ARM
ARM Metrics может быть использован для получения дополнительной информации об исполнении транзакции. ARM определяет набор метрических типов для различных целей, таких как счетчик, калибр или просто числовое значение.
Пользователь ARM
Определяет имя пользователя, от имени которого была выполнена оценка транзакции.