【MySQL核心知识】使用MySQL实现秒杀的三种方法
为什么使用MySQL秒杀是不安全的?对于库存量限制的商品,扣减库存时一般会先查询数据库中剩余库存量,如果还有库存,则进行库存扣减操作。在多线程场景下,假设某一时刻商品的库存量只有一个,此时正好有两个线程同时查询库存量,发现都大于零,随后他们都会执行进行库存更新,这两个线程会依次执行成功,此时库存量为-1,出现了超卖问题。如果使用MySQL悲观锁乐观锁MySQL自身锁。
原创
2023-09-16 20:35:58 ·
454 阅读 ·
1 评论