首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Jmeter吞吐量成形定时器发送更多请求,然后期望

Jmeter吞吐量成形定时器发送更多请求,然后期望
EN

Stack Overflow用户
提问于 2019-03-11 06:22:49
回答 2查看 920关注 0票数 3

我正在使用JMet4.0和吞吐量成形定时器,我已经提到了我的配置如下:

bzm -并发线程组:

  • 目标并发1000
  • 爬升时间:1
  • 爬上台阶:1
  • 保持目标率: 100分钟

jp@gc -通过整形定时器启动RPS: 333 \x{e76f}\x{e76f}(秒):1200

由于测试持续时间被提到为1200秒,并且Rps为333/秒,所以通过测试的请求命中次数应该是(333*1200) = 399600。但实际点击次数在每秒400000到410000次之间。

如何限制吞吐量整形定时器不发送额外的请求?

EN

回答 2

Stack Overflow用户

发布于 2019-03-11 08:06:54

您的总测试持续时间isn't 1200 seconds。查看并发线程组配置,您的测试持续时间正好是6001秒( 1000用户的提升速度为1秒,保持目标速率时间为6000秒)。

要获得所需的RPS,您必须遵循以下公式来定义并发线程组中的线程数:

线程池大小可以像RPS * <max response time> / 1000那样计算。

如果您的响应时间是1 second,那么333 Threads就足以实现这个RPS。我想,在这种情况下,您使用了更多的线程。

根据您给定的测试计划,它的工作方式是:1000个用户在1秒内处于活动状态,然后他们将尝试在1200秒内达到333 RPS,然后他们将维护1000个用户的剩余时间请求(6001-1220=4801秒),就像您刚才提到的那样,1000个用户将保持负载100分钟。由于这个原因,您得到的额外请求比预期的多。

因此,在线程组中定义线程数并相应地增加时间,并正确同步测试持续时间(在本例中,保持加载时间可能是20分钟,而不是100分钟)。

票数 1
EN

Stack Overflow用户

发布于 2019-03-11 09:32:40

JMeter无法在吞吐量成形定时器达到其持续时间限制时立即停止1000个线程,JMeter告诉“线程停止1200个秒的传递,并且可能需要一段时间才能优雅地关闭线程。

在您的设置中,拥有准确的399600采样器的唯一方法是在Total Executions模式下使用吞吐量控制器,如下所示:

通过这种方式,您将获得执行不超过339600个采样器的信心(顺便说一句,如果应用程序响应时间大于300 ms,则数量可能会更少)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55096221

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档