GTS 從 2.8.18 版本開始支持 Dubbo。您無需再關心全局事務上下文 XID 在服務調用鏈路上的傳播,進一步簡化了編程模型。
前提條件
- 準備兩個 RDS 實例,用戶創建數據庫。
- 準備一個 ECS 實例,用于部署本樣例。
實現原理
基于 Dubbo 的 Filter 機制,GTS 的 SDK 內置了專門用于在調用鏈路上傳播事務上下文的 TransactionPropagationFilter
,有需要有用戶可以對這個類進行 DEBUG 來了解事務傳播的機制。
說明
- Java 運行環境的最低要求是 1.8。
- 只支持 2.7.0 及以上版本的 Dubbo,即
org.apache.dubbo
Group 的 Dubbo。
樣例邏輯說明
該樣例模擬了用戶下訂單、減庫存的業務邏輯??蛻舳耍–lient)通過調用訂單服務(OrderService)創建訂單,之后通過調用庫存服務(StockService)扣庫存。其中在訂單服務讀寫訂單數據庫、庫存服務讀寫庫存數據庫過程中,GTS 將保證跨服務事務的一致性。