Що таке моніторинг продуктивності додатків (APM)

моніторинг

Моніторинг продуктивності додатків (Application Performance Monitoring, APM) вирішує завдання контролю, управління доступністю та безпосередньо продуктивністю додатків. Різні фахівці можуть трактувати це визначення по-різному, тому спробуємо описати, що це за рішення, з чого складається і чому важливо для компанії.

Як працює Application Performance Monitoring?

Корпоративні програми змінюються і стають багаторівневими, розподіленими між різними серверами чи навіть континентами, переходячи у хмари. Тому такі складні розподілені програми вимагають контролю, оскільки у деяких компаніях є основою бізнесу. Як і будь-який моніторинг рішення APM визначають базову продуктивність і приймають це за норму. Далі будь-які відхилення від неї реєструються та вимагають прийняття рішення з метою визначення причин відхилення у продуктивності. Таким чином на відміну від рішень NPMD (Network Performance Monitoring and Diagnostics), призначених для аналізу продуктивності ІТ-інфраструктури, тут фокус системи - додаток, помилки в коді та їх вплив на його продуктивність.

За допомогою APM ми можемо оцінити:

  • стан фізичного устаткування;
  • стан віртуальної машини;
  • стан віртуальної Java машини;
  • стан контейнера;
  • поведінка самого додатку;
  • стан допоміжної інфраструктури, баз даних, кеші, зовнішні Інтернет-сервіси.

Після того, як ми отримуємо показники продуктивності з усіх цих джерел, рішення APM має інтерпретувати для нас і провести кореляцію між ними для оцінки впливу на бізнес транзакції. Це те самемісце, де магія рішень APM проявляється на повну силу.

моніторинг

Виробники рішень повинні розуміти на глибокому рівні поведінку різних додатків, щоб видати вердикт — чи живий пацієнт чи скоріше мертвий. Особливо це важливо робити швидко, оскільки релізи додатків змінюються досить часто, а рівень програмістів групи прикладників буває різний.

Наступний крок – це постійний моніторинг та порівняння поточної продуктивності з базовою, щоб чуйно реагувати на відхилення. Наприклад, якщо ключові бізнес транзакції, як правило, виконуються протягом 4 секунд у п'ятницю, а цієї п'ятниці — це становить 8 секунд, то виникає логічне питання: «Що трапилося?». Далі система моніторингу додатків, проаналізувавши всі внутрішні та зовнішні залежності, має визначити поведінку якого елемента не відповідає нормі та у зручному форматі повідомити відповідальних фахівців. Далі справа за малим усунути виявлену проблему. Частина проблем через налаштування системи може бути усунена автоматично, наприклад, шляхом виділення додаткових ресурсів при зростанні кількості користувачів або обсягу запитів.

Таким чином, ми можемо уточнити визначення моніторингу продуктивності програм APM – це система, яка виконує:

  • збирання показників продуктивності всього середовища додатків,
  • інтерпретацію цих показників у світлі виконуваних бізнес-процесів і транзакцій,
  • порівняння та аналіз поточних показників та базових,
  • захоплення відповідної контекстної інформації при виявленні відхилень,
  • відправлення повідомлень про ненормальну поведінку,
  • адаптацію середовища додатків для усунення проблем із продуктивністю.

Отже, підіб'ємо підсумок, рішення для моніторингу продуктивностідодатків – необхідний інструмент, який дозволяє зрозуміти поведінку вашої програми, виявити проблеми, перш ніж ваші користувачі зазнають негативного впливу та, по можливості, швидко вирішити ці проблеми. З точки зору бізнесу, рішення APM є важливим, тому що воно зменшує середній час відновлення (MTTR). А це означає, що проблеми з продуктивністю вирішуються швидше та ефективніше, що впливає на продуктивність роботи співробітників та репутацію компанії.

Додаткові матеріали

Чим NPM відрізняється від APM?

Дивіться розбір реальних переваг NPM та APM у записі вебінару з фахівцями IXIA.