【发布时间】:2020-02-19 04:38:45
【问题描述】:
JMeter 是否允许我每秒发送恒定数量的请求,而不是仅在请求完成时按顺序发送?即即使请求 1 尚未完成响应,我是否可以在请求 1 之后发送请求 2?
我正在使用 Apache JMeter 5.2.1,如果有人能就此提供指导,我将不胜感激。 恒定吞吐量计时器,似乎更关注吞吐量,但我想简单地发送 X req/s。
【问题讨论】:
标签: jmeter jmeter-plugins jmeter-5.0
JMeter 是否允许我每秒发送恒定数量的请求,而不是仅在请求完成时按顺序发送?即即使请求 1 尚未完成响应,我是否可以在请求 1 之后发送请求 2?
我正在使用 Apache JMeter 5.2.1,如果有人能就此提供指导,我将不胜感激。 恒定吞吐量计时器,似乎更关注吞吐量,但我想简单地发送 X req/s。
【问题讨论】:
标签: jmeter jmeter-plugins jmeter-5.0
恒定吞吐量计时器只能暂停 JMeter 线程,以便限制每秒的请求数为给定值。
因此,您必须在 Thread Group 中提供足够的线程,以每秒创建比您尝试实现的请求更多的请求,然后使用恒定吞吐量计时器将每秒请求数限制为所需的速率。
所以主要的限制是:
所以我建议改用以下方法之一:
【讨论】:
我最终发现的解决方案非常简单。如果我决定总共需要发出 5000 个请求,并且我想遵循每秒发送 2 个请求的范例,无论是否收到响应。我可以简单地使用是使用加速期。
“Ramp Up” - 启动所有线程所需的时间
因此,如果您希望每秒 N 个请求,并且希望发送 M 个总请求,您需要将您的加速周期设置为 M/N,在我的情况下为 5000/2 = 2500。此外,不需要多个迭代。
当然,这可能意味着如果服务非常慢,您可以将服务正在处理的并发线程增加到大量,但这就是我们想要测试的。
【讨论】: