Jmeter控制RPS

一、前言

​ RPS (Request Per Second)一般用来衡量服务端的吞吐量,相比于并发模式,更适合用来摸底服务端的性能。我们可以通过使用 JMeter 的常数吞吐量定时器来限制每个线程的RPS。对于RPS,我们可以把他理解为我们的TPS,我们就不过多解释了。

​ RPS 取决于压测的并发数以及服务的响应时间,并发数过高,可能压力过大压垮后端服务,并发数过低,可能压不到指定的 RPS。为了避免压力过大压垮后端服务以及摸底后端服务性能上限,可以通过设置常数吞吐量定时器来限制线程的 RPS 上限。接下来我们用很短的篇幅来简单说下如何控制脚本的RPS

二、配置RPS

​ 常数吞吐量定时器的设置十分的简单,这里我们设置的RPS就是21000/60=350RPS。

第二个基于计算吞吐量字段,字面意思也很清晰了

  • 只有此线程:控制每个线程的吞吐量,总的吞吐量为设置的目标吞吐量乘以该线程的数量
  • 所有活动线程:设置的目标吞吐量将分配在每个活跃线程上,每个活跃线程在上一次运行结束后等待合理的时间后再次运行。活跃线程指同一时刻同时运行的线程。
  • 所有活动线程(共享):与所有活动线程的选项基本相同。唯一区别是,每个活跃线程都会在所有活跃线程上一次运行结束后等待合理的时间后再次运行。
  • 当前线程组中的所有活动线程:设置的目标吞吐量将分配在当前线程组的每一个活跃线程上,当测试计划中只有一个线程组时,该选项和所有活动线程选项的效果完全相同。
  • 当前线程组中的所有活动线程(共享):与当前线程组中的所有活动线程基本相同,唯一的区别是,每个活跃线程都会在所有活跃线程的上一次运行结束后等待合理的时间后再次运行。

三、运行结果

很明显,运行结果中RPS最高为350左右

以上就是这节的全部内容,如有错误,还请各位指正!

相关推荐
星轨zb9 小时前
JUC 到 Redis 分布式锁:一次关于高并发的性能压测实验
java·redis·分布式·jmeter
泥水沟的胖头鱼3 天前
关于jmeter修改 JVM 堆,到底是在jmeter.properties还是jmeter.bat?
jvm·jmeter·压力测试
1candobetter3 天前
JMeter + ServerAgent 压测监控实践
jmeter
查拉图斯特拉面条5 天前
JMeter 实战技巧:JSON 数组筛选指定对象并剔除首尾大括号
jmeter·json
查拉图斯特拉面条5 天前
JMeter 实战:JSON 响应中文节点 + 数值精准断言(附真实接口案例)
jmeter·json
qq_4924484467 天前
Jmeter Transaction Controller(事务控制器) 的 TPS(每秒事务数)严格固定为 1
java·开发语言·jmeter
Rookie_hh7 天前
使用Jmeter进行性能测试
jmeter
qq_452396239 天前
第十四篇:《JMeter插件扩展:自定义函数与第三方插件》
开发语言·python·jmeter
qq_452396239 天前
第十三篇:《分布式压测:JMeter Master-Slave集群》
分布式·jmeter
qq_4523962310 天前
第十一篇:《性能压测基础:JMeter线程模型与压测策略设计》
java·开发语言·jmeter