模拟服务器高并发
介绍使用场合:① 小米手机饥饿销售(抢购手机)② 火车抢购火车票高并发:短时间之内,针对同一个页面发生大量请求,进行商品抢购
工具/原料
服务器,电脑
模拟服务器高并发:
1、1.许多用户抢购同一个商品(商品的数量有限)--抢购商品表现在设置场景,大家都来抢购iphone5这款手机,每人只允许购买一个,允许60个进行购买,购买完毕库存还剩余40个。
2、2.apache本身提供了一个模拟高并发请求的工具,名字:ab.exe
3、3.> ab.exe -n 请求的次数 -c多少人请求 被请求地址
4、4.以上程碌食撞搁序模拟用户下单,减少库存情况,我们使得60个用户过来做请求,实际库存应该剩余40个(原先是100个)具体通过以下ab.exe进行高并发模拟请求高并发:短时间之内对同一个页面进行大量请求
5、5.请求完毕,库存的剩余量实际为43个(与我们理论计算的结果40个不一致)
6、6.以上商品库秽颢擤崮存量剩余43个,说明我们的程序有问题原因:第一个用户做请求,感知库存量为80,之后其要做减少库存操作,在库存没有真实减少之前,第二个用户有迅速过来做请求,其获得的库存量也是80造成的结果是两个用户分表请求一次,库存量没有减少2个,而是减少1个(库存最终都是79)
7、7.以上问题解决:我们要利用“锁”机制,实现一个用户请求的时候,其他用户进行禁止做请求,直到第一个用户请求完成为止。
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:84
阅读量:75
阅读量:69
阅读量:21
阅读量:34