【问题标题】:Jmeter - concurrency thread group with throughput sampleJmeter - 具有吞吐量示例的并发线程组
【发布时间】:2021-08-06 18:18:16
【问题描述】:

我有一个带有并发线程组和吞吐量整形计时器的 JMeter 测试计划。 下面是测试计划的截图。 发布请求是针对设备一个接一个发送的两个请求。每秒应该有 200 个事务/请求需要发送,我由并发线程组中的目标并发控制,在吞吐量整形计时器中启动 RPS 和结束 RPS。 总 TPS 应为 200(测试计划中第一个和第二个请求的总和),并且每个线程中的设备都不同。这可以通过上述测试计划来实现。我看到在测试即将结束时,某些设备没有发送后事件 2(测试计划中的第二个后事件)。

【问题讨论】:

    标签: jmeter


    【解决方案1】:

    您应该能够通过并发线程组中的反馈功能使用吞吐量整形定时器来实现目标吞吐量(RPS)。

    可以在吞吐量整形计时器上设置 RPS

    short video 演示了如何使用 JMeter 中可用的各种选项进行吞吐量控制。

    【讨论】:

      【解决方案2】:

      是的,这是可能的,但请注意并发线程组中的“并发”是线程数(虚拟用户),并且每秒请求数将等于线程数,前提是您的应用程序响应时间是 1 秒。

      如果更高 - 您将需要按比例增加并发线程组中的“并发”。

      更多信息:What is the Relationship Between Users and Hits Per Second?

      您可以通过Feedback Function 将并发线程组与吞吐量整形计时器连接起来,这样如果当前数量不足以达到/维持每秒所需的请求数量,JMeter 将能够启动额外的线程.

      还要重新考虑在您的测试计划中使用侦听器,它们不会增加任何价值,只会消耗宝贵的资源,you should be running JMeter tests in non-GUI mode with all listeners enabled/deleted,一旦测试完成,使用您选择的侦听器打开.jtl results file 或生成HTML Reporting Dashboard

      【讨论】:

      • 在测试结束时,我看到来自发布事件 2 的一些请求没有发布。如何确保在测试时间内完成第二个请求?
      • 并发线程组在达到保持负载​​的时间时终止虚拟用户,不能保证两个请求都会被执行,如果你需要这个-考虑切换到普通线程组和固定数量的循环。每秒的请求数仍然可以通过吞吐量整形计时器(或Constant Throughput TimerPrecise Throughput Timer)控制
      猜你喜欢
      • 2019-05-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多