说明
- jmeter 5.4.1
- 测试论坛登录并发的拐点
第一次线程组脚本配置
设置并发10个请求,永远
设置RPS定时器,将RPS逐渐增加到50/S,并持续一段时间
结果分析
首先分析Hits per Second,在54秒后,RPS为84.7/S(可以理解为:最大支持1秒内84.7个用户同时登录),出现拐点,请求曲线开始收窄,有同学会问,怎么会是RPS?不是HPS吗?因为在单接口请求下,我么可以认为HPS和RPS是相等的
查看聚合报告,得到RT的响应时间,平均值为203,,这时候可能会有同学说,你这里不能取平均时间,不具有代表性,我们还应该考虑90%,95%,99%不同比例的接口响应时间。对的,个人认为,这些数值在和平均值没有过大的区别的情况下,我们可以取平均值来计算,如果说出现了较大的波动,那么我们需要考虑是不是服务器的内存,cpu出现了问题。
这里我们算下并发数:
84.7*0.203=17.19
,可以理解为,支持17.19个用户在1s内同时登录查看TPS ,发现在16秒支持最大tps为12,不然就会出现明显波动
第一次运行结果总结
- 我们的最大请求数为84
- 最大 TPS 为12
- 最大系统并发数在 17左右
- 超出这些范围就开始出现波动
第二次调整运行参数
- 查看TPS,在21秒是,tps的值为18为最佳,不然后续出现巨大波动
第二次结果分析
- 我们的最大请求数为84
- 最大 TPS 为18
- 最大系统并发数在 14左右
- 超出这些范围就开始出现波动
CLI运行
- 10个并发
命令运行
- 发起压测请求
jmeter -n -t resp.jmx -l result/report.jtl
1 | E:\jmeter>jmeter -n -t resp.jmx -l result/report.jtl |
压测完毕后,转变为测试报告
jmeter -g report.jtl -o report
报告分析
RPS为80.48/S
得到RT的响应时间,平均值为121.14,这里我们算下并发数:80.4*0.121=14.17
tps的值为27为最佳,不然后续出现巨大波动
第三次结果分析
- 我们的最大请求数为84
- 最大 TPS 为27
- 最大系统并发数在 14左右
- 超出这些范围就开始出现波动
三次结果总结
- 我们的最大请求数为84
- 最大 TPS 为12-27
- CLI模式下TPS支持最大
- 最大系统并发数在 14-17
- 这些范围就开始出现波动
其他
- 可以测试多次,取平均值
- 参考这里的测试方式