分布式事務解決方案

2021-07-24 03:47:01 字數 552 閱讀 7248

一、結合mq訊息中介軟體實現的可靠訊息最終一致性

二、tcc補償性事務解決

三、最大努力通知型方案

第一種方案:

可靠訊息最終一致性,需要業務系統結合mq訊息中介軟體實現,在實現過程中需要保證訊息的成功傳送及成功消費。即需要通過業務系統控制mq的訊息狀態

。第二種方案:

tcc補償性,分為三個階段trying-confirming-canceling。每個階段做不同的處理。

trying階段主要是對業務系統進行檢測及資源預留

。confirming階段是做業務提交,通過trying階段執行成功後,再執行該階段。預設如果trying階段執行成功,confirming就一定能成功。

canceling階段是回對業務做回滾,在trying階段中,如果存在分支事務trying失敗,則需要呼叫canceling將已預留的資源進行釋放。

第三種方案:

最大努力通知型

這種方案主要用在與第三方系統通訊時,

這種方案也是結合mq進行實現,例如:通過mq傳送http請求,設定最大通知次數。達到通 知次數後即不再通知。

事務 分布式事務解決方案

事務acid特性 事務隔離級別 指的是讀和寫同時出現時出現的資料不一致問題。事務的一致性問題 存在問題問題描述 髒讀 dirty read 針對的是單條資料。即乙個更新操作a修改了某一條資料,但尚未提交該事務,此時另乙個讀操作b來查詢該條資料,讀到的是修改後的但尚未提交的資料。不可重複讀 unrep...

分布式事務解決方案

當資料庫單錶一年產生的資料超過1000w,那麼就要考慮分庫分表,具體分庫分表的原理在此不做解釋,以後有空詳細說,簡單的說就是原來的乙個資料庫變成了多個資料庫。這時候,如果乙個操作既訪問01庫,又訪問02庫,而且要保證資料的一致性,那麼就要用到分布式事務。所謂的soa化,就是業務的服務化。比如原來單機...

分布式事務解決方案

由於資料量的巨大,大部分web應用都需要部署很多個資料庫例項。這樣,有些使用者操作就可能需要去修改多個資料庫例項中的資料。傳統的解決方法是使用分布式事務保證資料的全域性一致性,經典的方法是使用兩階段提交協議。長期以來,分布式事務提供的優雅的全域性acid保證麻醉了應用開發者的心靈,很多人都不敢越雷池...