雲原生應用架構:微服務開發最佳實戰
內容描述
傳統的微服務應用正在經歷著雲原生技術的“洗禮”。隨著該領域技術的不斷變革與完善,以原生方式開發基於雲的微服務成了降本提效的重要手段。FreeWheel 核心業務系統開發團隊在多年的實踐中探索出了一條雲原生微服務應用構建之路。本書基於這些實踐經驗,從設計、開發到測試、部署,介紹了團隊如何利用雲原生技術為應用開發的全生命周期賦能。從架構技術選型到具體工程實踐,書中內容理論聯系實際,較為全面地剖析了容器落地、服務網格、無服務器計算、持續集成和持續部署等核心雲原生技術,適合關註微服務、雲原生技術的架構師、工程師及技術決策者閱讀。
目錄大綱
第1章 雲原生時代下的微服務 1
1.1 從微服務談起 1
1.2 雲原生應用 9
1.3 從微服務到雲原生 17
1.4 本章小結 21
第2章 微服務應用設計方法 22
2.1 應用架構設計 22
2.2 遺留系統改造 37
2.3 業務邏輯設計 43
2.4 本章小結 54
第3章 服務開發與運維 55
3.1 敏捷開發流程 55
3.2 搭建運行環境 64
3.3 代碼管理 67
3.4 低代碼開發平台 77
3.5 服務管理與運維平台 83
3.6 服務中台化 87
3.7 本章小結 93
第4章 微服務流量管理 94
4.1 雲原生時代的流量管理 94
4.2 服務發現 98
4.3 使用Istio服務網格進行流量管理 102
4.4 使用Istio提升應用的容錯能力 127
4.5 本章小結 134
第5章 分佈式事務 135
5.1 分佈式事務的挑戰 135
5.2 分佈式事務框架的方案選型 140
5.3 基於Saga和Kafka的分佈式事務落地實踐 149
5.4 本章小結 155
第6章 無服務器架構 157
6.1 什麼是無服務器架構 157
6.2 無服務器架構應用 163
6.3 無服務器架構的落地實踐 169
6.4 本章小結 190
第7章 服務的可觀察性 191
7.1 什麼是可觀察性 191
7.2 雲原生下的日誌解決方案 195
7.3 分佈式追踪 222
7.4 度量指標 233
7.5 監控與告警設計 242
7.6 本章小結 258
第8章 質量保證實踐 259
8.1 質量保證體系 259
8.2 測試實踐 265
8.3 混沌工程 285
8.4 類生產環境的質量保證 311
8.5 本章小結 322
第9章 持續集成和持續部署 323
9.1 基於Git的持續集成 323
9.2 基於Helm的持續部署 337
9.3 基於Kubernetes的持續部署實踐 348
9.4 本章小結 354
作者介紹
FreeWheel核心業務系統開發團隊
團隊從2017年開始構建基於微服務架構的雲原生應用,積累了大量的實踐經驗。除了開發企業級SaaS系統,團隊還自研了微服務業務中台、服務治理平台、低代碼開發平台等創新項目。
關於FreeWheel
FreeWheel成立於2007年,是美國傳媒巨頭康卡斯特集團旗下的高端視頻廣告技術供應商,在北京、紐約、舊金山、芝加哥、倫敦、巴黎等地設有分支機構。