通过验证日志将Jmeter响应时间与服务器时间进行比较,为什么Jmeter响应时间不准确

问题描述 投票:1回答:1

我的查询是当我完成性能测试并获得结果文件时,我可以看到Jmeter响应时间和服务器响应时间之间存在差异。我通过检查服务器日志来验证服务器响应时间。我也没有在结果文件中写入任何额外的元素。我能否解释为什么与实际响应时间相比,Jmeter显示的响应时间总是很高

jmeter performance-testing
1个回答
1
投票

你有没有想过网络?据JMeter glossary说:

经过的时间。 JMeter测量从发送请求之前到刚收到最后一个响应之后的经过时间。 JMeter不包括呈现响应所需的时间,JMeter也不处理任何客户端代码,例如Javascript。

潜伏。 JMeter测量从发送请求之前到刚收到第一个响应之后的延迟。因此,时间包括组装请求以及组装响应的第一部分所需的所有处理,其通常将长于一个字节。协议分析器(如Wireshark)测量通过接口实际发送/接收字节的时间。 JMeter时间应该更接近浏览器或其他应用程序客户端所经历的时间。

连接时间。 JMeter测量建立连接所花费的时间,包括SSL握手。请注意,连接时间不会自动从延迟中减去。在连接错误的情况下,度量将等于面对错误所花费的时间,例如,在超时的情况下,它应该等于连接超时。

所以我的期望是服务器只测量处理请求和响应所需的时间,而JMeter测量所有端到端事务:

  • 建立连接(特别是初始SSL Handshake可能很长)
  • 将数据包发送到服务器
  • 这里服务器开始测量
  • 由服务器处理请求
  • 这里服务器停止测量
  • 等待第一个数据包到来(延迟)
  • 等待最后一个包来(经过的时间)

请求来回can really matter所需的时间,例如,如果您的路由器出现故障或未正确配置负载均衡器,即使实际服务器响应时间较短,用户体验也不会顺利。

© www.soinside.com 2019 - 2024. All rights reserved.