2015-05-19 1 views
1

Я контролирую приложение PHP с помощью NewRelic, и я очень смущен некоторыми номерами, показанными в обзоре моего приложения.Как время «сервера приложений» связано с «временем браузера» и «временем транзакции» в newrelic?

Мое приложение состоит из PHP веб-приложение, которое служит для страниц веб-браузеров на одной стороне (очевидно :), и выполняет запросы на внутреннем интерфейсе Java на другой стороне:

< Browser -> PHP Webapp - -> Java Backend

Я знаю, что некоторые из запросов на брандмауэр Java могут занять до 15 секунд, что приведет к полному webapp с точки зрения браузера, который занимает много времени.

В обзорной панели newrelic (APM> My App> Monitoring> Overview) говорится, что время моего «сервера приложений» составляет в среднем 1560 мс и что мое «время браузера» составляет 5,63 секунды (я включил мониторинг браузера). Кроме того, в разделе «Сделки» показаны транзакции длиной до 11,6 секунд.

Итак ... как все эти разные измерения времени связаны между собой? Подводя итог, у меня есть:

  • PHP "приложение сервера" Время: 1560 мс
  • PHP приложение "Время браузера": 5.63 Секунды
  • "Сделки" Время: 11.6 сек

Как могу ли я понять эти цифры? Я бы ожидал, что «время браузера» будет самым высоким (поскольку он включает в себя все остальные, как обработку PHP, так и транзакцию). Складываются ли они каким-то образом? Некоторые из них являются разбивкой других?

Примечание: Я знаю, что в newrelic это все среднее время относительно анализируемого временного окна, но все же это не имеет смысла для меня.

Спасибо!

ответ

4

Ну, я, наконец, понял это :) Ключевое понятие, которое я здесь отсутствовал, было «процентили». Позвольте мне немного пояснить.

В моем вопросе я упомянул, что получаю среднее время отклика 1560 мс, что, казалось, не имело смысла, учитывая тот факт, что наш бэкэнд всегда должен обрабатываться в течение примерно 15 секунд для получения ответа. Следующая картина - это то, что я получаю в «обзоре» моего webapp.

web transactions average times

Как вы можете видеть, средние ответы времени не кажется, что плохо. Тем не менее, я также вижу транзакции, которые занимают до 15 секунд.

После того, как вы разберете селектор времени «Веб-транзакции» и выберите знак процента («%»), вы получите график «Percentiles». Шахта выглядит следующим образом:

web transaction percentiles

В этом новом графике:

  • зеленая линия представляет собой среднее время отклика, что соответствует зеленой области первого графа.Здесь мы видим, что на самом деле это означает, что транзакции занимают в среднем менее 2 секунд для завершения. Все идет нормально.
  • оранжево-иш линия, что соответствует «95%». Это ключ к пониманию того, как все эти числа объединяются. Этот «95%» соответствует «95th percentile» ваших запросов. Это означает, что 95% ваших запросов занимают меньше времени. Но, конечно, это также означает, что 5% ваших запросов берут больше!
  • синяя линия, соответствующая «99%» или «99-й процентиль» ваших запросов, что означает, что 99% ваших запросов занимают меньше этой строки, но опять-таки 1% занимает больше.
  • красная линия, соответствующая «медиане», которая, если факт является синонимом «50%» или «50-й процентиль». В этом пункте вы можете себе представить, что это такое: 50% ваших запросов занимают меньше, чем в этот раз, а еще 50% принимают больше (отсюда и название «медиана»). Обратите внимание, что эта мера значительно отличается от «среднего» понятия, поскольку среднее суммирует все времена и делит на общее количество транзакций, тем самым скрываясь в большом объеме выборки, те транзакции, которые находятся на крайних значениях время выборки.

Теперь все это начинает иметь смысл. Мои средние запросы на самом деле занимают не более 2 секунд. Но у меня так много запросов, которые очень быстры (те, что ниже красной линии), что те, кто занимает невероятное количество времени в 15 секунд, в среднем не заметны. Это видно только тогда, когда вы смотрите на длинный хвост ваших выборочных запросов, т.е. 95-й и 99-й процентили.

Чтобы обернуть это, можно подтвердить выбор опции «гистограмма» на графике. Шахта выглядит следующим образом:

web transactions histogram

Уведомление подавляющее большинство запроса взять под 200мс, но у нас есть также 8,29% от сделок, имеющих более 7 секунд для завершения (и если бы мы могли прокрутить справа гистограмма, мы обнаружили бы, что на самом деле запрос, занимающий более 15 секунд, находится в последних 5% и 1% из-за анализа процентили, который мы делали раньше).

(Эта статья указал мне в правильном направлении: https://blog.newrelic.com/2013/10/23/histograms-percentiles-new-relic-style/)

Это был я дезориентирован в течение длительного времени, надеюсь, что это поможет кому-то!

+0

Обратите внимание, что если вы нажмете на одну из баров гистограммы, вы получите подробную информацию о том, какие транзакции сгруппированы там :) – jotadepicas

 Смежные вопросы

  • Нет связанных вопросов^_^