需求 双十二要搞一个一分钱门票抢购的活动. 分析 性能分析,抢购时会发生高并发,如果仅仅依靠Mysql数据库,有可能因为大量的请求频繁访问数据库造成服务器雪崩,所以考虑通过Redis减库存,最终的数据落地到DB中. 在高并发的情况下,还要考虑到超卖的问题,因而打算使用Lua脚本完成原子减的操作. 在这里,我们只针对减库存的操作进行分析. 实现 不使用原子操作,出现超卖的情况.第一步:先从redis中查出库存进行判断,第二步:如果库存>0,则进行减库存的操作. 代码实现: // 第一步:从redi