作 者:姜宇,馮艷娜 著
定 價:109
出 版 社:電子工業出版社
出版日期:2021年11月01日
頁 數:224
裝 幀:平裝
ISBN:9787121421648
"1. 深入分析了Seata技術原理,包括AT模式、TCC模式、RPC設計、事務協調器等關鍵技術。2. 對源碼進行了深入的剖析,可以幫助讀者做到“知其然,並知其所以然”。3. 分享了作者在設計、編碼時的一些心得體會和思考方式。"
●第1篇 分布式事務技術基礎
★第1章 事務與分布式事務
1.1 事務及ACID四大特性
1.1.1 原子性(Atomicity)
1.1.2 一致性(Consistency)
1.1.3 隔離性(Isolation)
1.1.4 持久性(Durability)
1.2 XA兩階段提交協議
1.2.1 兩階段提交協議的執行過程
1.2.2 兩階段提交協議的缺點
1.3 分布式基礎之CAP和BASE理論
1.3.1 CAP理論
1.3.2 BASE理論
1.4 TCC柔性事務
1.5 基於消息的最終一致性
1.5.1 問題示例
1.5.2 解決方案
第2篇 Seata原理詳解
★第2章 Seata簡介
2.1 Seata發展歷史
2.2 Seata總體架構
2.2.1 模塊組成
2.2.2 邏輯結構
2.3 Seata 事務模式
2.3.1 AT模式
2.3.2 TCC模式
2.3.3 Saga模式
2.3.4 XA模式
★第3章 Seata AT模式
3.1 AT模式的基本原理
3.1.1 工作流程示例
3.1.2 事務日志表
3.1.3 事務日志管理器
3.2 Seata的數據源代理
3.2.1 數據源代理類
3.2.2 資源管理器
3.2.3 數據庫連接代理
3.2.4 StatementProxy 與PreparedStatementProxy
3.3 AT模式的兩階段提交
3.3.1 一階段處理
3.3.2 二階段的提交處理
3.3.3 二階段的回滾處理
★第4章 Seata TCC模式
4.1 TCC模式介紹
4.1.1 TCC模式與 AT模式對比
4.1.2 TCC模式的設計方法
4.2 TCC模式的實現原理
4.2.1 TCC模式的注解
4.2.2 TCC模式的資源注冊
4.2.3 TCC模式的事務發起
★第5章 Seata RPC設計
5.1 網絡通信
5.2 事務消息類型
5.3 消息序列化
5.3.1 資源管理器注冊消息的編/解碼
5.3.2 分支事務注冊消息的編/解碼
5.3.3 合並消息的編/解碼
第6章 Seata事務協調器
6.1 服務端的啟動流程
6.2 默認的事務協調器
6.3 事務的消息處理
6.3.1 全局事務開始事件GlobalBeginRequest
的處理過程
6.3.2 全局事務提交事件GlobalCommitRequest
的處理過程
6.4 事務的二階段推進
6.5 全局鎖的原理
6.5.1 文件鎖管理器的添加全局鎖
6.5.2 文件鎖管理器的釋放全局鎖
第3篇 Seata開發實戰
★第7章 Seata AT模式開發實例
7.1 AT模式樣例簡介
7.2 準備工作
7.3 運行樣例工程
7.4 驗證AT模式分布式事務
★第8章 Seata TCC模式開發實例
8.1 TCC模式樣例簡介
8.1.1 扣錢業務的TCC模式實現
8.1.2 加錢業務的TCC模式實現
8.1.3 轉賬業務的全局事務
8.2 運行樣例工程
8.2.1 測試全局事務提交
8.2.2 測試全局事務回滾
8.3 缺陷分析
在微服務架構下,分布式事務一直是痛點和難點。Seata是阿裡巴巴開源的分布式事務中間件,致力於以高效且對業務無侵入的方式,解決在微服務場景下面臨的分布式事務問題。 本書作者是阿裡巴巴GTS創始人和Seata作者,結合其多年在分布式事務領域設計、研發和應用的經驗,深入淺出地闡述了分布式事務技術基礎、Seata AT模式、TCC模式、RPC設計、事務協調器技術的原理,並給出了兩個開發實例(AT模式和TCC模式)。 本書可以為微服務繫統架構師、研發人員解決核心業務實際問題提供思路,也適合分布式技術相關專業的學生閱讀,幫助他們建立分布式事務的知識框架。
姜宇,馮艷娜 著
"姜宇 阿裡分布式事務 GTS 創始人,開源軟件 SEATA 作者。現任職於華為雲計算,20 級技術專家。之前任職於阿裡中間件團隊,高級技術專家。之前任職於Oracle Tuxedo團隊,主任工程師。個人擁有26個發明專利。"