Почему время отклика Jmeter не является точным по сравнению с временем сервера при проверке журналов - PullRequest
0 голосов
/ 06 сентября 2018

Мой запрос: когда я закончу тестирование производительности и получу файл результатов, я смог увидеть разницу между временем отклика Jmeter и временем отклика сервера. Я проверил время отклика сервера, проверив журналы сервера. Я также не записываю никаких дополнительных элементов в файл результатов. Могу ли я получить объяснение, почему время отклика, отображаемое Jmeter, всегда высоко по сравнению с фактическим временем отклика

1 Ответ

0 голосов
/ 06 сентября 2018

Вы думали о сети? Согласно JMeter глоссарий :

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

Задержка . JMeter измеряет задержку от непосредственно перед отправкой запроса до получения первого ответа. Таким образом, время включает в себя всю обработку, необходимую для сборки запроса, а также для сборки первой части ответа, которая в общем случае будет длиннее одного байта. Анализаторы протокола (такие как Wireshark) измеряют время, когда байты фактически отправляются / принимаются через интерфейс. Время JMeter должно быть ближе к тому, которое испытывает браузер или другой клиент приложения.

Время соединения . JMeter измеряет время, необходимое для установления соединения, включая рукопожатие SSL. Обратите внимание, что время соединения не вычитается из задержки автоматически. В случае ошибки соединения метрика будет равна времени, которое потребовалось для устранения ошибки, например, в случае Таймаута, оно должно быть равно времени ожидания соединения.

Так что я ожидаю, что сервер измеряет только время, необходимое для обработки запроса и ответа, в то время как JMeter измеряет все сквозные транзакции до:

  • Установление соединения (в частности начальное SSL Handshake может быть очень длинным)
  • Отправка пакетов на сервер
  • здесь сервер начинает измерение
  • Обработка запроса сервером
  • здесь сервер останавливает измерение
  • Ожидание первого пакета (задержка)
  • Ожидание последнего пакета (Истекшее время)

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...