? ? ? ? ? ? ? ? ? ? ? ? ? ? 如何解決超賣問題?
超賣問題:就是多個線程并發執行,目前唯一方案是加鎖。
如圖:悲觀鎖其實還有數據庫的互斥鎖。悲觀鎖是最常見的
樂觀鎖實現的原理:
版本號:
這種方案就是:扣款庫存的時候首先先查詢版本號,然后再修改庫存的時候把查詢的庫存號當做條件并把版本號進行+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,一經查實,立即刪除!