JMeter常数吞吐量定时器Constant Throughput Timer介绍
在JMeter中定时器用来设置延时和同步,以调节请求的发送速率,那么如何产生固定吞吐量的压力哪?可以使用常数吞吐量定时器(Constant Throughput Timer)来实现。
下面举例来看看如何做到以固定吞吐量发送请求,创建一个JMeter脚本,加入了若干http请求,其中常数吞吐量定时器目标吞吐量设为每分钟60个,this thread only表示对单个线程生效。
![](https://pic4.zhimg.com/80/v2-b84e9ce61616d241893d4edffee6091b_1440w.webp)
线程组线程数设为10,持续压测时长60秒,也就是1分钟
![](https://pic4.zhimg.com/80/v2-e6966f7f6ebdee0976ec7151d051f6ef_1440w.webp)
执行测试,完成后聚合报告统计共发送了600个请求(实际并不是精确的600个,误差可以忽略,以下结果也同样),也就是一分钟内共10个线程发送请求,每个线程都发送了60个请求。
![](https://pic1.zhimg.com/80/v2-e2dbaf32ece6257c3c7fe4497f9517c0_1440w.webp)
监控hit per second也是每秒10个请求的速率。
![](https://pic2.zhimg.com/80/v2-8c829cd05ced970e18c359548d5bb259_1440w.webp)
现在我们修改固定吞吐量定时器目标吞吐量基于all active threads生效,其他设置都不改变,来看看运行效果如何。
![](https://pic1.zhimg.com/80/v2-e1d9d7b27f19152e06eb92028f90ace4_1440w.webp)
最终聚合报告我们看到10个线程一分钟内共发送了60个请求,也就是说这个固定吞吐量定时器设置是针对所有线程来设定。
转:https://zhuanlan.zhihu.com/p/496073122