死鎖-CAS下ABA問題及優化方案

一、併發業務場景 庫存業務,stock(sid, num),其中: sid爲庫存id num爲庫存值 如上圖所示,兩個併發的查詢庫存操作,同時從數據庫都得到了庫存是5。 接下來用戶發生了併發的庫存扣減動作: 如上圖所示: 用戶1購買了3個庫存,於是庫存要設置爲2 用戶2購買了2個庫存,於是庫存要設置爲3 這兩個設置庫存的接口併發執行,庫存會先變成2,再變成3,導致數據不一致(實際賣出了5件商品,但
相關文章
相關標籤/搜索