0%

寻找拐点

说明

  • jmeter 5.4.1
  • 测试论坛登录并发的拐点

第一次线程组脚本配置

  • 设置并发10个请求,永远

    image-20211126145852042

  • 设置RPS定时器,将RPS逐渐增加到50/S,并持续一段时间

image-20211126150023226

结果分析

  • 首先分析Hits per Second,在54秒后,RPS为84.7/S(可以理解为:最大支持1秒内84.7个用户同时登录),出现拐点,请求曲线开始收窄,有同学会问,怎么会是RPS?不是HPS吗?因为在单接口请求下,我么可以认为HPS和RPS是相等的

    image-20211129113816875

  • 查看聚合报告,得到RT的响应时间,平均值为203,,这时候可能会有同学说,你这里不能取平均时间,不具有代表性,我们还应该考虑90%,95%,99%不同比例的接口响应时间。对的,个人认为,这些数值在和平均值没有过大的区别的情况下,我们可以取平均值来计算,如果说出现了较大的波动,那么我们需要考虑是不是服务器的内存,cpu出现了问题。

  • 这里我们算下并发数:84.7*0.203=17.19,可以理解为,支持17.19个用户在1s内同时登录

  • 查看TPS ,发现在16秒支持最大tps为12,不然就会出现明显波动

    image-20211129114833158

第一次运行结果总结

  • 我们的最大请求数为84
  • 最大 TPS 为12
  • 最大系统并发数在 17左右
  • 超出这些范围就开始出现波动

第二次调整运行参数

  • 并发数调整为5个

    image-20211129145513074

    运行结果分析

  • 在54秒时,RPS的值为84.3/S

    image-20211129145631570

  • 查看聚合报告,得到RT的响应时间,平均值为175,这里我们算下并发数:84.3*0.175=14.17

image-20211129145944164

  • 查看TPS,在21秒是,tps的值为18为最佳,不然后续出现巨大波动

image-20211129150633788

第二次结果分析

  • 我们的最大请求数为84
  • 最大 TPS 为18
  • 最大系统并发数在 14左右
  • 超出这些范围就开始出现波动

CLI运行

  • 10个并发

命令运行

  • 发起压测请求jmeter -n -t resp.jmx -l result/report.jtl
1
2
3
4
5
6
7
8
9
10
E:\jmeter>jmeter -n -t resp.jmx -l result/report.jtl
Creating summariser <summary>
Created the tree successfully using resp.jmx
Starting standalone test @ Tue Nov 30 10:06:56 CST 2021 (1638238016471)
Waiting for possible Shutdown/StopTestNow/HeapDump/ThreadDump message on port 4445
summary + 9 in 00:00:03 = 2.6/s Avg: 140 Min: 117 Max: 230 Err: 0 (0.00%) Active: 5 Started: 5 Finished: 0
summary + 406 in 00:00:30 = 13.7/s Avg: 148 Min: 108 Max: 1160 Err: 0 (0.00%) Active: 5 Started: 5 Finished: 0
summary = 415 in 00:00:33 = 12.5/s Avg: 148 Min: 108 Max: 1160 Err: 0 (0.00%)
summary + 516 in 00:00:30 = 17.2/s Avg: 232 Min: 108 Max: 15728 Err: 0 (0.00%) Active: 5 Started: 5 Finished: 0
.....
  • 压测完毕后,转变为测试报告

    jmeter -g report.jtl -o report

    image-20211130102551759

    报告分析

  • RPS为80.48/S

    image-20211130102819087

  • 得到RT的响应时间,平均值为121.14,这里我们算下并发数:80.4*0.121=14.17

image-20211130103151709

  • tps的值为27为最佳,不然后续出现巨大波动

    image-20211130104030732

第三次结果分析

  • 我们的最大请求数为84
  • 最大 TPS 为27
  • 最大系统并发数在 14左右
  • 超出这些范围就开始出现波动

三次结果总结

  • 我们的最大请求数为84
  • 最大 TPS 为12-27
    • CLI模式下TPS支持最大
  • 最大系统并发数在 14-17
  • 这些范围就开始出现波动

其他

  • 可以测试多次,取平均值
  • 参考这里的测试方式