事务下的锁
来源:34-7 py-redis-lock核心源码分析

三生三途
2021-01-23
goods_1【进程1】首先加锁,然后进行库存减少,成功会解锁,此时进行goods_2【进程1】的加锁,
与此同时进程2的goods_1获取到了锁,然后获取到了商品数量为100。因为进程1的事务没有执行完成,所以库存减少并没有写入数据库,此时还是会超卖啊。。。这段程序应该是有bug,不能在事务里加分布式锁吗?
写回答
2回答
-
鼎晨要住顶层
2021-06-12
同学,我也被这个问题困住了,想问下你后面解决了么?
00 -
三生三途
提问者
2021-01-23
这里因为不是全局锁,是针对某个商品的锁,当商品解锁后,商品所属事务并没有结束,所以另外一个人获取到锁后读取的数量还是100,没有更新。。是不是要和乐观锁一起用呢。。
022021-01-24
相似问题