本文主要是介绍采用jmeter进行抢购商品的压力测试,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
测试内容
疫情物资抢购项目提供了三种解决方案来比较系统性能:
1.利用MySQL的update行锁实现悲观锁。
2.MySQL加字段version实现乐观锁。
3.添加Redis缓存;
使用了JMeter在保证错误率为零的基础上,进行压力与性能测试(实验设置的是10秒内产生3000个请求或酌情5000个请求),分析每秒处理请求数、平均响应时间、等参数,最后得出相应结论。
测试步骤
1.建立线程组
并发数:5000/s,采样一周期
2.添加随机管理器,设置随机生成访问ID
代码出处:https://www.cnblogs.com/feng-1314/p/7115605.html
import java.util.UUID;UUID uuid1 = UUID.randomUUID(); //获取UID的值vars.put("id",(uuid1.toString()).toUpperCase().replaceAll("-","")); //去掉UUID的“-”,再赋值给order_id 运行获取的参数就是:3F2504E04F8911D39A0C0305E82C3301//vars.put("order_id",(uuid1.toString()).toUpperCase()); //这个就是不用去掉UUID的“-” 运行获取到的参数就是:3F2504E0-4F89-11D3-9A0C-0305E82C3301
POST请求
测试结果
1.悲观锁缓存结果:
qps=(1000/6378)*3000=470
2.乐观锁
qps=(1000/756)*5000=6613
响应时间记录周期:200ms
3.Redis的缓存结果:
qps=(1000/91)*3000=32258
响应时间记录周期:100ms
这篇关于采用jmeter进行抢购商品的压力测试的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!