跳到主要内容

订单库存扣减解决方案

订单库存扣减痛点

  1. 下单是高频的、核心的业务,需要高性能、高稳定性

  2. 防止超卖

  3. 保证事务一致性

  4. 高性能

解决方案

stock-lua

  • 商品的时时库存存储在redis中,在数据库中做持久存储
  • GoodsStockManager 是库存的统一处理接口
  • 他通过执行redis的lua脚本来实现对redis库存的扣减
  • 因为redis的原子事务,lua脚本本事是事务安全的
  • GoodsStockManager 再根据lua脚本的执行结果去扣减数据库的库存