分布式事務seata學習

2021-10-22 23:15:17 字數 638 閱讀 2085

1、at模式

2、tcc模式

3、saga模式

at 模式基於 支援本地 acid 事務 的 關係型資料庫:

一階段 prepare 行為:在本地事務中,一併提交業務資料更新和相應回滾日誌記錄。

二階段 commit 行為:馬上成功結束,自動 非同步批量清理回滾日誌。

二階段 rollback 行為:通過回滾日誌,自動 生成補償操作,完成資料回滾。

相應的,tcc 模式,不依賴於底層資料資源的事務支援:

一階段 prepare 行為:呼叫 自定義 的 prepare 邏輯。

二階段 commit 行為:呼叫 自定義 的 commit 邏輯。

二階段 rollback 行為:呼叫 自定義 的 rollback 邏輯。

另外,我也自己總結了乙份我認為這兩種模式的差別點(具體差別點導致的原因,留到後續再進行討論)

attcc

全域性鎖需要

不需要回滾日誌

需要不需要

commit/cancel階段**實現

不需要需要

是否需要開發者解決懸掛和空回滾問題

不需要需要

效能低(需要全域性鎖導致)

高(無鎖)

seata分布式事務

分布式事務使用,組長有話說 1 跨服務呼叫的 兩邊都有改資料或新增資料的 都要加上本地事物 並且 發起方要加上 分布式事物 千萬別忘了啊 2 尤其是 呼叫mq的時候 3 我把用到mq的地方都加了分布式註解,漏的你們看一下。portal的託運單,確認下單後,先同步到oms,再從oms同步到tms 1....

seata 分布式事務

seata 是乙個分布式事務解決方案,內建了對at xa tcc saga的支援,主要由tc tm rm三類角色,tc 事務協調器 作為服務端,tm 事務管理器 和rm 資源管理器 工作在客戶端。seata最大程度的保證了對應用的透明。at模式 at模式是通過乙個兩階段提交的方式來管理事務,第一階段...

分布式事務框架seata

seata at模式 at模式和xa模式一樣,都是乙個兩階段提交的事務模型,不過和xa相比,做了一些優化,這個官網著重講解了一下at的原理,之後開一節著重看下一at模式的實現原理。saga模式 另外saga還提供了一下兩種補償恢復方式 saga的優勢 saga的實現方式 在以上支付下單的流程上乙個典...