說幾種實現冪等的方式?


這篇文章,寫的很詳細了。

探討一下實現冪等性的幾種方式

 

本質:

利用數據庫的樂觀鎖,悲觀鎖,唯一約束。

 

總結:

1、第一種方案,利用數據庫的樂觀鎖機制 

(update t_order set status = 1 where order_id = trade_no and status = 0 ,判斷狀態。這種思想類似CAS操作,如果符合我的預期值,我就干。

2、第二種方案,利用數據庫的悲觀鎖機制

(使用 for update,行級鎖,優點:設計簡單。缺點:如果多個實例,多個線程進來,只有一個線程獲取鎖,其他線程處於等待狀態。影響並發性能)

3、第三種方案,新建一張表,建立唯一索引。

(優點:設計簡單。缺點:如果業務變大,這張表會成為性能的瓶頸)

 

按照最優排序:樂觀鎖 > 唯一約束 > 悲觀鎖


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM