超卖现象的解决方案

1、悲观锁方案, update 时使用 for update

2、无符号类型字段,把库存字段设置无符号整型,更新库存少于0时会报错

3、乐观锁方案

  • 使用 case 语句,即 when 库存>=扣减数 then 库存-扣减数
  • 使用 where 语句,即 where 库存>=扣减数

性能比较:乐观锁 > 无符号类型字段 > 悲观锁

建议方案: 无符号类型字段 + 乐观锁 双重保险方案

小刘

纸上得来终觉浅,绝知此事要躬行

你可能也会喜欢...

发表评论

电子邮件地址不会被公开。 必填项已用*标注