PHP秒杀系统设计实现代码

场景描述

假设公司现在要搞一个特价促销活动,商品为iPhone11手机,库存为2台,购买时间为晚上8点。预计有100名用户参与这次促销活动。现在用PHP做了一个链接,时间一到,谁先点击,谁就可以下单购买。

表设计

商品库存表

订单表

PHP伪代码如下:

此程序不在并发条件下,单个点击是没有问题的,good_orders表里只会出现2条订单记录,但一旦处于并发条件下,就会存在多条订单,这样就造成了超卖的情况,老板亏了咱的日子也不好过。

使用文件锁

redis实现

将库存放入redis

从redis中扣库存

参与评论