【问题标题】:jmeter runs more threads than expected using jp@gc - Ultimate Thread Groupjmeter 使用 jp@gc 运行比预期更多的线程 - Ultimate Thread Group
【发布时间】:2020-06-09 23:10:56
【问题描述】:

我尝试设置 1 个线程、1 个加速、1 个循环作为测试线程组;我验证了我的聚合报告,线程数符合预期。

当我使用 jp@gc - Ultimate Thread Group 运行相同的请求时出现问题,我尝试从 1 个及以上线程开始,但我得到的线程数总是比我设置的多,请参阅汇总报告图像。

尝试过: 版本 5.2.1 并升级到 5.3 删除旧的 jmeter 版本 删除和添加 Ultimate Thread Group 通过 CLI 和 GUI 运行

非常感谢您的帮助。

jp@gc - Ultimate Thread Group setting img

Aggregate report result img

添加更多细节...... 我预计在 3 个不同的时间段(10、30、100)中拆分到 140 个线程,实际结果是 1406 个线程。

Ultimate Thread Group - 140

Actual result

【问题讨论】:

    标签: jmeter jmeter-plugins


    【解决方案1】:

    SAMPLES != 线程

    这些是指由 JMeter 生成的线程束正在执行的迭代次数,您已将其定义为 Ultimate Thread Group 中“开始线程计数”的一部分。这个值是NOT THREADS

    线程 - 也被视为虚拟用户/活动线程/活动用户/模拟用户。这些是您在 Ultimate Thread Group 中指定为“Start Threads Count”的一部分的值。这些在聚合报告侦听器中的任何地方都没有测量,但您可以找到另一个名为 "jp@gc - Active Threads Over Time"

    的侦听器

    模拟与您相同的场景

    聚合报告监听器的结果

    您的期望在另一个名为“jp@gc - Active Threads Over Time”的侦听器中得到满足


    希望这会有所帮助!

    【讨论】:

    • 哇,这是一个很好的解释,我很困惑,添加了 Active Threads Over Time 侦听器,它符合预期。非常感谢您的大力帮助!!!
    【解决方案2】:

    你有 1 个线程,但是:

    • 它正在 1 秒内启动
    • 然后它将负载保持 10 秒
    • 最后它有 2 秒的时间关闭

    我不知道您“期望”有多少线程,您当前的设置假定“API 性能”请求持续 13 秒,JMeter 将执行的请求数将取决于您的 API 响应时间。在Aggregate Report 中查看测试结果超过 2 秒,因此 13 秒的 6 个请求绝对预期

    如果出于某种原因,您希望当前设置只有 1 个请求,您可以使用 Throughput Controller 限制 JMeter 发送的请求数

    查看Choosing The Right Thread Group For Your Scenario 文章,了解有关您需要为各种工作负载类型使用哪个线程组的更多信息。

    【讨论】:

    • 嗨 Dimitri,我只是检查了它发送一个线程的作用,这不是我最初计划的测试。除了我最初的问题之外,我还添加了 140 个线程的更多细节和图像以及实际结果。谢谢!!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多