并发下的购物车扣减库存方案

并发下的购物车扣减库存方案,第1张

并发下的购物车扣减库存方案
商品下单减库存,网上示例几乎都是单品扣减库存。但实际情况往往是多个单品一次下单,在并发情况下怎么保证不超卖呢?先看下运行结果

购物车并发下单运行结果

商品 shopCode_01 初始化 数量 1000
商品 shopCode_02 初始化 数量 500
商品 shopCode_03 初始化 数量 100

购物车并发购买 shopCode_01 150个,shopCode_02 100个,shopCode_03 50 个



具体方案:

   1. 先将库存数量缓存到 redis 中
   2. 使用 redis 的原子 *** 作 increment 方法,保证线程安全
   3. 判断结果是否大于等于0 防止超卖,如果满足将商品信息保存到 list 集合中,否则 redis 回滚 库存
   4. 判断 list 集合数量与购物车单品数量是否相同ÿ

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/871254.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-13
下一篇 2022-05-13

发表评论

登录后才能评论

评论列表(0条)

保存