胶带
我有一个非常简单的 Web 服务,我正在尝试测量不同吞吐量下的延迟指标 -
如果被测系统无法处理目标吞吐量,我希望 Jmeter 保持相同的吞吐量,即使很多请求失败。
我尝试使用大量线程和恒定吞吐量计时器来实现这一点,但 Jmeter 往往无法达到目标吞吐量,而不是请求失败。
有什么建议吗?
德米特里
恒定吞吐量计时器有两个主要限制:
- 它在分钟级别上足够准确,因此您需要确保您的测试运行足够长(分钟或更长时间)。此外,它的效果不是立竿见影的,因此在负载测试的第一分钟,您需要使用线程组级别的Ramp-Up Period 设置来控制虚拟用户的到达率
- 恒定吞吐量计时器只能暂停线程以将其执行速率限制为“目标吞吐量”,它无法启动任何额外的线程,因此请确保在线程组级别再次定义足够的虚拟用户
鉴于 Web 服务 == HTTP 传输和 HTTP 是有状态协议(每个 JMeter 线程(虚拟用户)在开始下一个之前都会等待来自前一个HTTP 请求采样器的响应,您可以通过为 HTTP 请求定义超时来加快速度,以便它们会更早失败。放置超时的最佳位置是HTTP Request Defaults,这样您就可以为范围内的所有 HTTP 请求采样器一次性完成
您可能还想尝试吞吐量整形计时器,它是恒定吞吐量计时器的增强版本。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
编辑于
我来说两句