中国建设银行个人登录网站,买个网站需要多少钱,网站建设配色方案,百度如何收录网站项目地址及项目具体介绍-码云仓库#xff1a;https://gitee.com/flowers-bloom-is-the-sea/distributeNodeSolvePessimisticLockByRedis
测试1#xff1a;
这里使用jmeter同时启动2各线程#xff1a;
原来的数据库表的数据#xff1a;
goods的数据是#xff1a; id …项目地址及项目具体介绍-码云仓库https://gitee.com/flowers-bloom-is-the-sea/distributeNodeSolvePessimisticLockByRedis
测试1
这里使用jmeter同时启动2各线程
原来的数据库表的数据
goods的数据是 id stock
------ --------1 999goods_order里没有数据。 测试结果
通过打断点调试goods_order的表里插入了1条数据goods的库存减一。两个项目工程确实会有一个的isLock为true另一个为false.
这样实际上就完成测试了但是只能说这个算一个数据量还不够的测试。
测试2
对于这个超卖的业务进行压力测试
jmeter开了2个线程组一组的测试端口为localhost:8081/goods/buyGoodByUserId/1/1另一组为localhost:8082/goods/buyGoodByUserId/1/1每一组分别1000以上线程来访问同时启动这2组线程组。
预测结果对于同一用户肯定是只能买1份物品因为锁在redis里获取一次只有一个线程可以成功其他线程失败也就是2000以上线程仅1个线程成功对于线程组而言肯定仅一个线程组的一个线程操作成功。
测试结果
这个线程组1000多个线程全部操作失败 这个线程组1000多个线程仅1个成功 查看了数据库的数据预测成立确实库存减一goods_order数据新增1条。