我有一个Thread-Group,它运行一段时间并通过Constant Throughput Timer控制吞吐量 . 因此理论上,无论部署的线程数是多少,都应处理大约相同数量的样本 .例如 . 忽略预热/降低测试运行10分钟,吞吐量为5个螺纹/秒,因此应处理大约3000个样品 .
更改线程数如何影响测试?
忽略启动/关闭期间,如果我有1000或2000个线程,如果一分钟内只能完成100个线程,测试结果是否会有所不同?
考虑到吞吐量,我如何计算出所需的线程数?
恒定吞吐量计时器
只能 pause 个线程匹配给定的吞吐量值 . 它赢得了足够的线程组级别定义 .
在 minute 级别上足够准确 . 如果你的测试持续不到一分钟 - 考虑其他选项,比如玩加速 .
欲了解更多信息,请查看How to use JMeter's Throughput Constant Timer
通过JMeter Plugins项目可以更好,更容易地使用Throughput Shaping Timer,该项目扩展了CTT功能并提供了易于理解的预期吞吐量的可视化视图
如果服务器面临速度减慢,线程数将影响结果 . 如果是这样,并且您没有足够的线程,那么您将不会注入预期的负载并最终执行更少的事务 .
如果您有更多,那么将注入目标负载可能导致服务器崩溃 .
最后请注意,如果你没有让你的测试持续时间足够,jmeter可能会注入超过预期的因为它需要一些时间来达到预期的req / s,它会在开始时注入更多 .
2 回答
恒定吞吐量计时器
只能 pause 个线程匹配给定的吞吐量值 . 它赢得了足够的线程组级别定义 .
在 minute 级别上足够准确 . 如果你的测试持续不到一分钟 - 考虑其他选项,比如玩加速 .
欲了解更多信息,请查看How to use JMeter's Throughput Constant Timer
通过JMeter Plugins项目可以更好,更容易地使用Throughput Shaping Timer,该项目扩展了CTT功能并提供了易于理解的预期吞吐量的可视化视图
如果服务器面临速度减慢,线程数将影响结果 . 如果是这样,并且您没有足够的线程,那么您将不会注入预期的负载并最终执行更少的事务 .
如果您有更多,那么将注入目标负载可能导致服务器崩溃 .
最后请注意,如果你没有让你的测试持续时间足够,jmeter可能会注入超过预期的因为它需要一些时间来达到预期的req / s,它会在开始时注入更多 .