如何让JMeter线程在测试全程均匀分布?实现每分钟创建60线程无请求限制
实现JMeter每分钟均匀创建60线程并持续无限制请求的方案
嘿,我明白你的困惑了——默认线程组的逻辑是在指定时间内启动一批线程,线程跑完任务就停,这和你想要的“持续每分钟新增60个线程、线程一直发请求”完全不是一回事。下面给你一套精准的解决方案:
核心工具:Stepping Thread Group插件
要实现这种动态持续的线程启动逻辑,默认线程组做不到,得用JMeter插件库的Stepping Thread Group(阶梯线程组),它能完美控制线程的启动速率和生命周期。
第一步:安装插件
- 打开JMeter,点击顶部菜单
Options→Plugins Manager - 切换到
Available Plugins标签,搜索Stepping Thread Group,勾选后点击Apply Changes and Restart JMeter,重启后就能看到这个线程组了。
第二步:配置Stepping Thread Group
添加这个线程组后,按以下参数配置(完全匹配你的需求):
- Initial thread count:0(测试启动时没有线程)
- Startup time (seconds):60(把每分钟启动60个线程的过程拆到60秒内完成)
- Ramp-up steps count:60(60秒分成60个步骤,每1秒启动1个线程,刚好每分钟60个)
- Hold load for:0(线程启动后不停止,一直跑请求)
- Shutdown time (seconds):0(测试结束时直接停所有线程)
- Repeat thread count:勾选
Forever(持续按这个速率新增线程,直到你手动停止测试)
第三步:确保请求无限制
要让每个线程一直发请求,还需要做这一步:
- 在Stepping Thread Group下添加一个循环控制器,勾选
Forever(或者设个极大的数字,比如999999) - 把你的事务控制器和请求取样器放到这个循环控制器里面,这样每个线程启动后就会不断重复执行请求,没有数量限制。
验证效果
启动测试后,你可以通过Summary Report查看:
- 线程数会每分钟稳定增加60个,全程均匀分布
- 请求数会随着线程数增长持续上升,完全符合“不限请求数量”的要求
小提醒:持续新增线程可能会把服务器压垮,测试时记得监控服务器的CPU、内存、响应时间这些指标,别玩脱了😉
内容的提问来源于stack exchange,提问作者JGleason
相关产品推荐
相关产品推荐

