如何解决超卖问题?
超卖问题:就是多个线程并发执行,目前唯一方案是加锁。
如图:悲观锁其实还有数据库的互斥锁。悲观锁是最常见的
乐观锁实现的原理:
版本号:
这种方案就是:扣款库存的时候首先先查询版本号,然后再修改库存的时候把查询的库存号当做条件并把版本号进行+1,库存-1。
CAS发
和第一种一样只是把版本号换成库存了。很好理解
优点:性能比悲观锁好。
缺点:高并发情况下依然存在超卖的问题。
超卖问题:就是多个线程并发执行,目前唯一方案是加锁。
如图:悲观锁其实还有数据库的互斥锁。悲观锁是最常见的
乐观锁实现的原理:
版本号:
这种方案就是:扣款库存的时候首先先查询版本号,然后再修改库存的时候把查询的库存号当做条件并把版本号进行+1,库存-1。
CAS发
和第一种一样只是把版本号换成库存了。很好理解
优点:性能比悲观锁好。
缺点:高并发情况下依然存在超卖的问题。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若转载,请注明出处:http://www.pswp.cn/pingmian/88900.shtml 繁体地址,请注明出处:http://hk.pswp.cn/pingmian/88900.shtml 英文地址,请注明出处:http://en.pswp.cn/pingmian/88900.shtml
如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!