Хотспоты сервиса с высоким временем отклика

Материал из Документация Ключ-АСТРОМ
Версия от 20:53, 9 февраля 2026; IKuznetsov (обсуждение | вклад) (Новая страница: «При включенном углубленном мониторинге процессов Ключ-АСТРОМ анализирует время отклик...»)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)

При включенном углубленном мониторинге процессов Ключ-АСТРОМ анализирует время отклика каждого сервиса, работающей в каждом процессе. Это применимо к Java, .NET, Node.js, PHP, веб-серверу Apache, IIS, NGINX и другим технологиям.

Участки с наибольшим временем отклика указывают, какие действия занимают больше всего времени для конкретной службы. На странице каждой службы в разделе Текущий участок представлен обзор связанных участков с наибольшим временем отклика , включая:

  • Наиболее распространенные ошибки, такие как медленное время ответа на запросы, высокая частота сбоев или высокое потребление ресурсов процессора.
  • Запросы с высоким потреблением ресурсов. Процент показывает долю запроса в общем времени ответа сервиса. В приведенном ниже примере 85% часть времени ответа JourneyService тратится на выполнение запроса findJourneys.

Imageа33.png


Для просмотра анализа хотспотов

  1. Перейдите в раздел Сервисы.
  2. Выберите серсив, который хотите проанализировать.
  3. Выполните одно из следующих действий:
    • Для анализа наиболее проблемного запроса выберите его в разделе Текущие проблемные запросы, чтобы отобразить подробную информацию о сервисе, отфильтрованную по проблемному запросу.
    • Для анализа всех проблемных мест по времени отклика сервиса на странице обзора сервиса выберите один из вариантов: Просмотреть запросы, Просмотреть динамические запросы или Просмотреть запросы ресурсов. Ключ-АСТРОМ отобразит общую информацию о сервисе.
  4. Выберите пункт Просмотреть проблемные зоны по времени отклика, чтобы перейти на страницу Распределения времени отклика.

Imageа34.png

На странице распределения времени отклика вы видите среднее время отклика, зафиксированное за анализируемый период. В левой части инфографики, в разделе Распределение, показано, сколько времени приходится на обращения к другим сервисам, обращения к базам данных и выполнение кода. В правой части, в разделе Топ нахождений, перечислены наиболее проблемные места, выявленные Ключ-АСТРОМ. Вы можете выбрать любой из этих пунктов, чтобы просмотреть более подробную информацию.

Запросы в другие сервисы

Выберите Взаимодействие со службами и очередями, чтобы отобразить подробную информацию о том, как эти вызовы влияют на общее время ответа.

Imageа35.png

Слева вы видите, как часто анализируемый сервис вызывает другие сервисы и в какой степени эти вызовы влияют на время ответа. Справа эта информация представлена ​​более подробно. В приведенном выше примере видно, что большая часть времени приходится на сервис Easytravel Customer Frontend. Выберите имя сервиса, чтобы просмотреть следующий шаг в иерархии. Достигнув самого нижнего уровня (уровня запроса), вы увидите полную информацию о времени ответа для выбранного запроса.

Imageа36.png

В приведенном выше примере мы видим, что EasytravelWebserver:8079 вызывает URL- адрес /orange.jsf только в 7,46% от общего числа инициируемых запросов easytravel Customer Frontend — ровно один раз каждый раз. Мы видим, что среднее время ответа /orange.jsf составляет 255 ms. Однако, поскольку этот вызов происходит лишь изредка, он вносит вклад только 19 ms в среднее время ответа EasytravelWebserver:8079.

Если вы выберете кнопку со стрелкой в ​​левой части раздела Взаимодействие со службами и очередями, вы сможете снова перемещаться вверх по иерархии.

Запросы к базе данных

Выберите раздел Использование базы данных на инфографике, чтобы получить подробную информацию о запросах к базе данных анализируемой службы и увидеть, как они влияют на время ответа. В верхней части инфографики представлена ​​та же навигация и информация, что и в разделе Взаимодействие со службами и очередями. Ниже вы можете просмотреть все запросы к базе данных.

Imageа37.png

Выбрав пункт списка в правом верхнем углу, вы можете отсортировать запросы к базе данных по среднему времени выполнения, проценту вызовов, количеству обращений и вкладу. По умолчанию запросы, которые вносят наибольший вклад во время ответа, отображаются вверху списка. Выберите SQL-запрос, чтобы просмотреть значения этих четырех атрибутов.

Imageа38.png

Видимость на уровне кода

Выберите пункт Исполнение сервиса, чтобы посмотреть, сколько времени сервис потратил на выполнение собственного кода.

Imageа39.png

Длина полосок отображает время, затраченное на каждую конкретную область. Темно-синий цвет обозначает время работы процессора. Выберите любое имя строки, отображаемое в виде ссылки, чтобы просмотреть соответствующие интерактивные области на уровне методов.

Imageа40.png

Выберите кнопку Просмотреть наиболее часто используемые методы и отметьте все классы и методы, которые были выполнены для запуска сервиса в разделе Иерархия вызовов. В столбце Образцы трассировки стека показано, сколько раз класс/метод был выполнен для сервиса за выбранный период времени. В столбце Вклад показана доля потребления, которую класс/метод вносит в общее время выполнения. Это позволяет определить, какой класс и/или метод потребляет большую часть времени выполнения, и впоследствии оптимизировать код.

Скачать код

Загрузка кода поддерживается для Java, .NET и Node.js.

Чтобы загрузить код для выполнения,

  1. Перейдите в раздел Действия и выберите > Исходный код.
  2. Выберите процесс, с помощью которого вы хотите загрузить код.
  3. Выберите Загрузить для интересующего вас варианта выполнения.
  4. Откройте исходный код.
Java .NET Node.js
Необходимо Для преобразования кода в исходный код используйте внешний декомпилятор, например, Bytecode Viewer. Необходимо Для преобразования кода в исходный код используйте внешний декомпилятор, например, dotPeak. Исходный код доступен непосредственно в Ключ-АСТРОМ.

Автоматические точки доступа

В разделе Топ нахождений инфографики анализа времени отклика перечислены ключевые факторы, влияющие на анализируемый запрос.

Если запрос выполняется медленно, вы увидите основную причину в разделе Основные проблемы. Выберите проблему, чтобы просмотреть более подробную информацию. В этом примере вы можете увидеть, что 226 мс из 639 мс было затрачено на вызов PaymentLogic.DoPay!

Imageа41.png

Распределение времени ответа

Выберите круговую область Время ответа на инфографике, чтобы открыть диаграмму, показывающую распределение времени ответа всех проанализированных запросов. Это покажет, имеет ли ваш сервис разброс времени ответа или работает равномерно.

Imageа42.png

Как правило, время ответа веб-сервисов сильно варьируется. Анализ одного запроса часто показывает более однородную картину.