使用jmeter并非所有请求都在数据库中处理,但在jmeter监听器中显示所有请求都会命中服务器

时间:2017-07-20 06:07:09

标签: jmeter master-slave

使用jmeter,我有10000个用户需要点击服务器并在40秒内回复。

在执行期间(在分布式模式下),服务器中只有600个用户真正点击(在db中检查)。

但在AGGREGATE REPORT中,它显示所有请求都会命中服务器。

这背后的问题是什么?为什么请求命中服务器的数量在db和jmeter listener之间不一致?

1 个答案:

答案 0 :(得分:0)

可能你的测试配置有点不对劲。

JMeter的行为如下:

  1. JMeter在Thread Group配置
  2. 中指定的提升期限内启动所有线程(虚拟用户)
  3. 每个线程(虚拟用户)开始执行samplers颠倒
  4. 当没有更多的采样器要执行且没有更多的循环来迭代时,线程正在关闭。
  5. 您可以使用Active Threads Over Time ListenerHTML Reporting Dashboard

    的相同图表检查实际活动的线程数

    因此,当某些采样器已完成其工作而某些采样器尚未启动时,您可能会遇到这种情况。基本上,您需要提供足够的循环以确保所有10k线程在所需的测试持续时间内启动并运行。

    有关详细信息,请参阅JMeter Test Results: Why the Actual Users Number is Lower than Expected指南。