在微服務(wù)技術(shù)流行的當(dāng)下,企業(yè)在實施微服務(wù)架構(gòu)的時候,會對整個研發(fā)體系,包括開發(fā)、運維、團(tuán)隊組織、協(xié)同都帶來沖擊。因此必須構(gòu)建起一整套以服務(wù)治理為核心、從線下到線上的新的能力體系來支撐這套新的架構(gòu)技術(shù),否則很難保證微服務(wù)架構(gòu)的順暢落地。 本書是作者多年服務(wù)治理經(jīng)驗總結(jié),希望能夠給仍在(微)服務(wù)治理迷局中奪路狂奔的計算機(jī)技術(shù)人員一點啟發(fā)和指引。 在本書的第一、二兩章中,作者將全面闡述服務(wù)治理的發(fā)展歷程,以及“大平臺、微服務(wù)”架構(gòu)下服務(wù)治理的難點及特點。在此基礎(chǔ)上,提出由微服務(wù)的度量、管控及管理構(gòu)建起一個三位一體的閉環(huán)體系來綜合解決微服務(wù)全生命周期的現(xiàn)實治理需求。并闡述治理體系所涉及的相關(guān)細(xì)分領(lǐng)域及技術(shù)能力。 在第三、四兩章中,重點介紹微服務(wù)的線上治理能力。通過微服務(wù)治理的度量指標(biāo)體系及指標(biāo)采集、存儲、分析手段構(gòu)建微服務(wù)度量能力,并在此基礎(chǔ)上進(jìn)行微服務(wù)的健康度分析、故障定界定位、容量規(guī)劃、根因分析、趨勢預(yù)測等來構(gòu)建針對微服務(wù)的“看”的能力。通過限流、降級、容錯、彈性伸縮、安全管控等管控手段來構(gòu)建微服務(wù)的“管”的能力。同時通過應(yīng)急預(yù)案、故障演練、混沌工程等穩(wěn)定性能力建設(shè)來來提升線上微服務(wù)的可靠性。 第五章將介紹通過APM及動態(tài)調(diào)用鏈跟蹤來提升微服務(wù)的監(jiān)控及度量能力。 第六章是微服務(wù)深度治理能力構(gòu)建,將微服務(wù)的治理延升到架構(gòu)、開發(fā)、測試、運維、團(tuán)隊協(xié)同等各個領(lǐng)域,從而實現(xiàn)微服務(wù)架構(gòu)在組織中從“用的了”到“用的好”的提升。同時將服務(wù)治理能力反哺給業(yè)務(wù),實現(xiàn)技術(shù)和業(yè)務(wù)的良性互動。 本書的七、八、九章是是實踐部分。通過一個指標(biāo)采集、傳輸、存儲、分析度量的完整演示案例來引導(dǎo)讀者深入理解微服務(wù)治理技術(shù)的應(yīng)用。
李鑫★具有多年大規(guī)模復(fù)雜系統(tǒng)架構(gòu)經(jīng)驗,在大規(guī)模分布式應(yīng)用及治理、中間件云化及服務(wù)化(PaaS)、APM監(jiān)控、基礎(chǔ)開發(fā)平臺、主數(shù)據(jù)管理(MDM)、數(shù)據(jù)治理等領(lǐng)域有較深的理論研究和實戰(zhàn)經(jīng)驗。★目前在金融行業(yè)負(fù)責(zé)基金直銷平臺的整體技術(shù)架構(gòu)和研發(fā)團(tuán)隊管理。曾任華為六級技術(shù)專家,主導(dǎo)了華為軟件多款云計算產(chǎn)品和服務(wù)的設(shè)計規(guī)劃和構(gòu)建工作。曾在當(dāng)當(dāng)網(wǎng)任運作產(chǎn)品平臺技術(shù)負(fù)責(zé)人,負(fù)責(zé)電商倉儲、物流、客服等平臺的整體技術(shù)架構(gòu)和研發(fā)團(tuán)隊管理。更早之前曾在航空、導(dǎo)航、金融、電信等領(lǐng)域從事企業(yè)級應(yīng)用的架構(gòu)設(shè)計和技術(shù)管理工作。★樂于分享技術(shù),擁有一個分享技術(shù)文章的公眾號——“碼碼的土狼”,更新頻率很隨意。曾在QCon、ArchSummit等技術(shù)大會上做技術(shù)演講,多次獲得“明星講師”及“優(yōu)秀出品人”榮譽稱號。
第1章 服務(wù)及服務(wù)治理發(fā)展簡介 1
1.1 IT治理與服務(wù)治理的關(guān)系 1
1.2 服務(wù)治理發(fā)展歷史 2
1.2.1 單體架構(gòu)及治理 2
1.2.2 企業(yè)SOA——EAI/ESB及治理 8
1.2.3 分布式服務(wù)及治理 17
1.2.4 微服務(wù)及治理 23
1.3 微服務(wù)治理的范疇 25
1.3.1 微服務(wù)是一種研發(fā)模式 25
1.3.2 微服務(wù)的架構(gòu)模式及治理 26
1.3.3 研發(fā)治理 29
1.3.4 測試治理 32
1.3.5 運維治理 34
1.3.6 管理治理 38
第2章 微服務(wù)治理技術(shù)概述 44
2.1 微服務(wù)架構(gòu) 44
2.1.1 代理模式 45
2.1.2 直連模式 46
2.1.3 邊車模式 48
2.1.4 直連模式的架構(gòu)特點 50
2.1.5 微服務(wù)全生命周期整體架構(gòu) 54
2.2 服務(wù)度量 56
2.2.1 服務(wù)開發(fā)質(zhì)量度量 56
2.2.2 服務(wù)測試質(zhì)量度量 65
2.2.3 服務(wù)運維質(zhì)量度量 68
2.2.4 服務(wù)線上性能度量 69
2.3 服務(wù)管控 79
2.3.1 微服務(wù)的內(nèi)部管控 79
2.3.2 微服務(wù)生命周期管理 81
2.4 三位一體:通過度量、管控、管理實現(xiàn)微服務(wù)治理閉環(huán) 87
2.4.1 治理指標(biāo)體系 87
2.4.2 治理度量與分析 91
2.4.3 通過管理將治理舉措落地 99
2.4.4 微服務(wù)治理整體架構(gòu) 100
第3章 通過服務(wù)度量提供治理依據(jù) 102
3.1 線上微服務(wù)度量核心指標(biāo)及分析手段 102
3.1.1 點:單次請求指標(biāo)采集 103
3.1.2 線:單服務(wù)一分鐘指標(biāo)疊加統(tǒng)計 104
3.1.3 面:單服務(wù)時間維度匯總統(tǒng)計 106
3.1.4 體:服務(wù)及資源指標(biāo)聚合分析 106
3.2 服務(wù)關(guān)系維度 108
3.2.1 治理目標(biāo) 108
3.2.2 服務(wù)基礎(chǔ)視圖 108
3.2.3 服務(wù)調(diào)用關(guān)系視圖 111
3.3 應(yīng)用關(guān)系維度 115
3.3.1 治理目標(biāo) 115
3.3.2 應(yīng)用調(diào)用關(guān)系視圖 116
3.3.3 以應(yīng)用為中心的運維統(tǒng)一視圖 118
3.4 服務(wù)性能維度 119
3.4.1 治理目標(biāo) 119
3.4.2 調(diào)用耗時分區(qū)分布統(tǒng)計 120
3.4.3 調(diào)用耗時分時分布統(tǒng)計 121
3.4.4 調(diào)用量/并發(fā)量分時分布統(tǒng)計 122
3.4.5 性能橫比 123
3.4.6 性能縱比 126
3.4.7 綜合性能分析 130
3.4.8 容量規(guī)劃 131
3.4.9 動態(tài)閾值 136
3.4.10 趨勢預(yù)測 138
3.5 服務(wù)異常維度 144
3.5.1 治理目標(biāo) 145
3.5.2 實時異常報表 146
3.5.3 異常分布報表 146
3.5.4 異常列表及查詢 149
3.5.5 故障定界定位 150
3.5.6 智能根因分析 152
3.5.7 業(yè)務(wù)異常分析 155
3.6 資源維度 157
3.6.1 治理目標(biāo) 158
3.6.2 網(wǎng)絡(luò)資源 158
3.6.3 數(shù)據(jù)庫資源 159
3.6.4 其他資源 161
3.7 服務(wù)綜合度量 161
3.7.1 服務(wù)重要性度量 162
3.7.2 服務(wù)健康度度量 163
第4章 通過服務(wù)管控實現(xiàn)治理閉環(huán) 166
4.1 分布式服務(wù)魯棒性的架構(gòu)保障 166
4.1.1 冗余 167
4.1.2 彈性伸縮 167
4.1.3 單點無狀態(tài) 168
4.1.4 不可變基礎(chǔ)設(shè)施 168
4.1.5 故障傳導(dǎo)阻斷 169
4.1.6 基礎(chǔ)設(shè)施即代碼 169
4.2 服務(wù)負(fù)載 170
4.2.1 隨機(jī)策略 170
4.2.2 輪詢策略 173
4.2.3 最近最少訪問策略 176
4.2.4 黏滯策略 177
4.2.5 一致性Hash策略 178
4.2.6 組合策略 179
4.3 服務(wù)限流 179
4.3.1 概念 180
4.3.2 限流模式 181
4.3.3 限流的難點及注意事項 186
4.4 服務(wù)集群容錯 187
4.4.1 服務(wù)集群容錯的概念 187
4.4.2 快速失敗 188
4.4.3 失敗安全 189
4.4.4 失敗轉(zhuǎn)移 190
4.4.5 失敗重試 192
4.4.6 聚合調(diào)用 194
4.4.7 廣播調(diào)用 197
4.5 服務(wù)降級 198
4.5.1 概念 198
4.5.2 屏蔽降級 199
4.5.3 容錯降級 200
4.5.4 Mock降級 202
4.5.5 熔斷降級 203
4.5.6 延伸閱讀:廣義降級操作 206
4.6 服務(wù)授權(quán) 207
4.6.1 自主授權(quán) 207
4.6.2 注冊中心授權(quán) 210
4.6.3 第三方服務(wù)授權(quán) 211