1、@劉江濤 提問:
已知在同一個分佈式事務中,各個 RM 的模式都應該與對應 TM 模式相同。那同一個微服務可以多種模式並存嗎?比如 AT , XA , Saga 並存,然後 A 業務使用 AT 模式,B 業務使用其他模式之類的。
A:不可以,隔離性無法得到保證。如果要一起用,就要保證一條調用鏈路中所有數據的隔離性,也就是跟 AT 一樣都得去競爭鎖,而且 Saga,TCC 之類的對 SQL 沒要求,可能在跟 AT 一起使用的時候就有要求了,得不償失。
如果公司要引入多種模式的話,微服務之間的關係是這樣的嗎?
A :是的,當然 AT 集羣是可以調 Saga 集羣的,但是他們不能屬於同一個全局事務,也就是 AT 那個事務提交了,Saga 的如果回滾了,是 Saga 集羣的問題,等於有 2 個全局事務的誕生。
本週發佈詳情如下:
重構了 StreamFilter 框架,提供更強的可複用的能力
支持 MaxProcs 可基於 CPU 使用限制自動識別的能力
支持指定 Istio cluster 的網絡
針對高併發場景的內存使用進行了優化
多處BUG修復
本文分享自微信公衆號 - 金融級分佈式架構(Antfin_SOFA)。
如有侵權,請聯繫 [email protected] 刪除。
本文參與“OSC源創計劃”,歡迎正在閱讀的你也加入,一起分享。