PHP的高并发锁
1、模拟高并发:许多用户抢购同一个商品(商品的数量有限)--抢购商品表

2、apache本身提供了一个模拟高并发请求的工具,名字:ab.exe

3、使用命令:> ab.exe -n 请求的次数 -c多少人请求 被请求地址

4、程序模录搠糅类拟用户下单,减少库存情况,我们使得60个用户过来做请求,实际库存应该剩余40个(原先是100个)具体通过以下ab.exe进行高并发模拟请求高并发:短时间之内对同一个页面进行大量请求

5、请求完毕,库存的剩余量实际为43个(与我们理论计算的结果40个不一致)

6、商品库存量港错恃瘦剩余43个,说明我们的程序有问题原因:第一个用户做请求,感知库存量为80,之后其要做减少库存操作,在库存没有真实减少之前,第二个用户有戒鱿蓠墼迅速过来做请求,其获得的库存量也是80造成的结果是两个用户分表请求一次,库存量没有减少2个,而是减少1个(库存最终都是79)

7、问题解决:我们要利用“锁”机制,实现一个用户请求的时候,其他用户进行禁止做请求,直到第一个用户请求完成为止。



