Jmeter-为什么测试即将结束时请求的经过时间会增加?

我已经配置了Jmeter测试,该测试具有1个线程组,40个线程,60秒的启动时间,并计划运行10分钟。它包含一个HTTP采样器。

运行此命令后,我得到的吞吐量为52 / min。这意味着每个请求的请求时间不到1.20秒。

  1. 现在,如果我在所有活动线程中以25 / min的速率向线程组添加恒定的吞吐量计时器,则在完成测试后,最终吞吐量为30 / min,平均耗用时间为5秒。应该不是2秒(因为吞吐量为30 / min)吗?当我减少吞吐量时,为什么平均经过时间增加了?

  2. 当测试即将结束时,最后几个请求的经过时间将达到约15000毫秒(通常的平均经过时间低于5000毫秒)。为什么会这样?

simonwong000 回答:Jmeter-为什么测试即将结束时请求的经过时间会增加?

这听起来像memory leak,因为从测试的第一分钟到第十分钟,应用程序处于相同的负载下,包括响应时间在内,响应时间应在此时间范围内保持大致相同。

如果响应时间增加,则很可能意味着应用程序过载,请求正在排队,或者它开始使用page file或执行garbage collection

我建议您对应用程序的基本运行状况指标(例如CPU,RAM,网络,磁盘,交换使用情况)进行监控,因为这可能解释了所描述的行为。可以使用JMeter PerfMon Plugin完成。

在负载测试期间监视特定于应用程序的度量甚至在profiling tool遥测下运行它也是一个好主意,这样您将找到应用程序中最慢/最消耗资源的部分。

最后但并非最不重要的一点是,确保JMeter有足够的操作空间(使用与上述相同的方法),就像您不遵循JMeter Best Practices一样,您可能会遇到JMeter无法执行以下操作的情况发送请求的速度不够快,导致错误的否定结果。

本文链接:https://www.f2er.com/3153795.html

大家都在问