标签:Tomcat 次数 压测 接口 report 循环 线程 test Jmeter
参考资料
Jmeter如何配置和使用
https://www.cnblogs.com/stulzq/p/8971531.html
配置与执行
可变参数配置
参数定义:${__P(参数名,默认值)}
参数使用:在执行jmeter时,通过“-J参数名”的方式对参数进行调用
执行命令
windows版本命令
# windows版本命令
jmeter -n -t test.jmx -Jip=localhost -Jport=8000 -JthreadNum=10 -JloopNum=1 -l -Jx=34.20818280000000 -Jy=113.54014170000000 E:\test-report\test.log -e -o E:\test-report\report
linux版本命令
# linux版本命令
./jmeter -n -t test.jmx -Jip=11.8.242.14 -Jport=8000 -JthreadNum=400 -JloopNum=1 -Jx=30.58779530000000 -Jy=104.03337630000000 -l /data/test-report/test.log -e -o /data/test-report/report
测试环境压力源及脚本执行命令
压力源:
- app:10.29.40.193
- 脚本路径:/var/apache-jmeter-5.4.3/bin
- 测试报告:/home/sunbox/test-report
- 小程序:11.8.242.13
执行脚本:
APP
./jmeter -n -t test.jmx -l /home/sunbox/test-report/test.log -e -o /home/sunbox/test-report/report
小程序
./jmeter -n -t test.jmx -l /data/test-report/test.log -e -o /data/test-report/report
压测过程及结果记录
- 原始状态:
线程数10,循环次数1。
test-report-1#10-1
- 原始状态:
线程数100,循环次数1。
test-report-2#100-1
- 坐标计算修改为多线程
线程数100,循环次数1。
test-report-3#100-1
- 相对v3没有修改
线程数200,循环次数2。
CPU满负荷,全部超时,压测失败。
- 提升Tomcat线程数:200 -> 400
线程数200,循环次数1。
CPU满负荷,全部超时,压测失败。
- 提升客户端的redis连接数配置:100 -> 300
线程数300,循环次数1。
Java服务报GC异常,内存溢出。
test-report-4#300-1
- 优化油站缓存结构,调整为分片缓存
线程数300,循环次数1。
没有出现超时情况,效率显著提高。
test-report-5#300-1
- 相对v7没有修改
线程数1000,循环次数1。
test-report-6#1000-1
- 修改入参坐标,调整坐标为最大的HASH中的坐标,HASH大小为1476
参数:104.13370520000000,30.82013920000000
线程数500,循环次数1。
test-report-7#500-1
- 相对v9没有修改
线程数200,循环次数1。
test-report-8#200-1
- 修改应用程序的Redis连接数为默认的100,Tomcat连接数为400
线程数200,循环次数1。
test-report-9#200-1
- 相对v11没有修改
线程数400,循环次数1。
test-report-10#400-1
- Tomcat连接数400,等待队列长度1000。Redis客户端连接数100。
线程数400,循环次数1。
观察nginx日志,请求的响应速度均在10ms~30ms之间。
- Tomcat和Redis配置同v13
线程数800,循环次数1。
观察nginx日志,接口响应速度均在10ms~30ms之间,与v13的压测结果大致相同。
- Tomcat和Redis配置同v13
线程数分别调整至1400、1200、1000,循环次数1。
均出现了性能衰减,接口响应速度在100ms~4000ms之间,已经出现了性能问题。
- Tomcat和Redis配置同v13
线程数1600,循环次数1。
出现了18%左右的请求丢失,原因是超过了Tomcat的最大连接数和最大等待队列长度之和,超过了Tomcat的请求处理能力范围。
同时,没有丢失的请求,出现了响应速度慢的现象,响应时间在3000ms~8000ms之间。
附件
测试报告及压测脚本
标签:Tomcat,次数,压测,接口,report,循环,线程,test,Jmeter 来源: https://www.cnblogs.com/zkm1992/p/16445578.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。