架構設計2.0:大型分散式系統架構方法論與實踐

《架構設計2.0:大型分散式系統架構方法論與實踐》是電子工業出版社於2021年出版的書籍,作者是余春龍。

基本介紹

  • 書名:架構設計2.0:大型分散式系統架構方法論與實踐
  • 作者:余春龍
  • 出版社電子工業出版社
  • 出版時間:2021年12月
  • 頁數:320 頁
  • 定價:105 元 
  • 開本:16 開
  • ISBN:9787121425073 
內容簡介,圖書目錄,

內容簡介

本書深刻總結了作者在大型網際網路公司長期的實戰經驗,系統化地闡述了構建大型分散式系統所需要的技術架構與業務架構方法論,並輔與詳盡的實踐剖析。全書分為三大部分:第1部分完整討論了分散式架構的幾大核心問題,包括高並發、高可靠性、高可用、數據一致性(包括分散式事務、Paxos/Raft一致性算法)、跨城容災與異地多活、CAP理論;第2部分從業務架構思維、需求分析、業務建模、領域驅動設計與微服務等角度探討業務架構;第3部分是案例實戰,通過眾多的業界實際案例來對理論有一個更為直觀的介紹。通過本書,讀者可以對構建大型複雜系統的方法論有全局的認識,對軟體架構的核心能力有深刻的理解,對個人的技術成長起到一定的借鑑作用,提升思維認知。本書不僅適合工程師、架構師閱讀,也適合企業系統開發人員在內的軟體開發從業人員閱讀。

圖書目錄

第1部分 分散式架構
第1章 高並發 4
1.1 問題分類 4
1.1.1 側重於“高並發讀”的系統 4
1.1.2 側重於“高並發寫”的系統 6
1.1.3 同時側重於“高並發讀”和“高並發寫”的系統 7
1.2 高並發讀 8
1.2.1 策略1:動靜分離與CDN加速 8
1.2.2 策略2:加快取 9
1.2.3 策略3:並發讀與Pipeline 10
1.2.4 策略4:批量讀 12
1.2.5 策略5:重寫輕讀 12
1.2.6 總結:讀寫分離(CQRS架構) 14
1.3 高並發寫 16
1.3.1 策略1:數據分片 16
1.3.2 策略2:任務分片 17
1.3.3 策略3:異步化與Pipeline 19
1.3.4 策略4:批量 26
1.3.5 策略5:串列化+多進程單執行緒+異步I/O 27
第2章 高可靠 29
2.1 容量評估與規劃 29
2.1.1 理論基礎:吞吐量、回響時間與並發數三者關係 29
2.1.2 容量規劃 31
2.1.3 單機最大QPS估算方法1: CPU密集型與I/O密集型的區分 32
2.1.4 單機最大QPS估算方法2:壓力測試 33
2.2 過載保護:限流與熔斷 35
2.2.1 限流的兩種限制維度 35
2.2.2 單機限流的算法 35
2.2.3 單機限流的實現 37
2.2.4 中央限流 40
2.2.5 熔斷 41
2.3 逾時與重試 42
2.4 隔離 43
2.5 有損服務與降級 44
2.6 灰度發布、備份與回滾 45
2.7 監控體系與日誌報警 47
第3章 分散式事務 50
3.1 隨處可見的分散式事務問題 51
3.1.1 快取和資料庫的一致性問題 51
3.1.2 訊息中間件和資料庫的一致性問題 51
3.1.3 兩個資料庫的一致性問題 51
3.1.4 服務和資料庫的一致性問題 51
3.1.5 兩個服務的一致性問題 52
3.1.6 兩個檔案的一致性問題 52
3.2 分散式事務解決方案匯總 52
3.2.1 2PC 52
3.2.2 最終一致性:第一種實現方案 56
3.2.3 最終一致性:第二種實現方案(基於事務訊息) 59
3.2.4 TCC 61
3.2.5 事務狀態表+事務補償 63
3.2.6 同步雙寫(多寫)+異步對賬 64
3.2.7 妥協方案:弱一致性+基於狀態的事後補償 66
3.2.8 妥協方案:重試+回滾+報警+人工修復 68
3.2.9 阿里雲Seata框架 68
3.2.10 總結 73

熱門詞條

聯絡我們