微服務:靈活的軟體架構

微服務:靈活的軟體架構

《微服務:靈活的軟體架構》是2019年11月1日人民郵電出版社出版的圖書,作者是[德] 埃伯哈德·沃爾夫( Eberhard Wolff) 。

基本介紹

  • 中文名:微服務:靈活的軟體架構
  • 作者:[德] 埃伯哈德·沃爾夫( Eberhard Wolff)
  • 出版社:人民郵電出版社
  • ISBN:9787115521293
內容簡介,圖書目錄,

內容簡介

微服務具有模組性強、可替代性強、可持續開發、可獨立伸縮、可持續交付等優點,近年來受到越來越多的開發者以及一些經驗老到的架構師的青睞,採用微服務架構的公司也越來越多。本書圍繞架構和團隊的主題,詳細介紹了微服務的各個方面,包括採用微服務的原因、微服務架構的基礎知識、微服務的實際套用、如何克服相關的挑戰,等等。本書還包含具體的實現示例,在代碼層面詳細介紹了微服務的技術實現。

圖書目錄

第 一部分 動機和基礎知識
第 1章 預備知識 2
1.1 微服務概述 2
1.2 為什麼採用微服務 3
1.3 挑戰 5
1.4 總結 6
第 2章 微服務套用案例 7
2.1 遺留電商套用的技術更新 7
2.2 開發一個新的信號系統 13
2.3 總結 15
第二部分 微服務是什麼,用還是不用
第3章 什麼是微服務 18
3.1 微服務的大小 18
3.2 康威定律 24
3.3 領域驅動設計與限界上下文 27
3.4 為什麼要遠離標準數據模型 32
3.5 微服務要不要包含UI 34
3.6 總結 35
第4章 採用微服務的原因 37
4.1 技術優勢 37
4.2 組織上的優勢 42
4.3 業務方面的優勢 44
4.4 總結 45
第5章 挑戰 47
5.1 技術挑戰 47
5.2 架構 50
5.3 基礎設施與運維 52
5.4 總結 53
第6章 微服務與SOA 55
6.1 什麼是SOA 55
6.2 SOA與微服務的區別 59
6.3 總結 62
第三部分 微服務的實現
第7章 微服務系統架構 68
7.1 領域架構 68
7.2 架構管理 71
7.3 調整架構的技術 75
7.4 增長的微服務系統 81
7.5 別錯過出口:如何避免微服務的退化 84
7.6 微服務與遺留套用 86
7.7 潛在的依賴 91
7.8 事件驅動架構 92
7.9 技術架構 93
7.10 配置與協調 95
7.11 服務發現 97
7.12 負載均衡 99
7.13 可伸縮性 102
7.14 安全性 104
7.15 文檔與元數據 109
7.16 總結 110
第8章 集成與通信 112
8.1 Web與UI 112
8.2 REST 121
8.3 SOAP與RPC 123
8.4 訊息 124
8.5 數據複製 126
8.6 內部接口與外部接口 128
8.7 總結 130
第9章 單個微服務架構 133
9.1 領域架構 133
9.2 CQRS 134
9.3 事件溯源 136
9.4 六邊形架構 138
9.5 容錯性和穩定性 141
9.6 技術架構 144
9.7 總結 146
第 10章 微服務與微服務系統的測試 148
10.1 為什麼需要測試 148
10.2 如何測試 149
10.3 降低部署的風險 153
10.4 系統整體的測試 154
10.5 遺留套用與微服務的測試 157
10.6 各個微服務的測試 159
10.7 消費者驅動的契約測試 160
10.8 技術標準的測試 163
10.9 總結 164
第 11章 微服務的運維及持續交付 165
11.1 微服務運維的挑戰 165
11.2 日誌 167
11.3 監控 171
11.4 部署 176
11.5 聯合部署還是獨立部署 179
11.6 控制 180
11.7 基礎設施 180
11.8 總結 184
第 12章 微服務架構的組織效應 186
12.1 微服務的組織效益 186
12.2 康威定律的替代方案 189
12.3 微觀架構與巨觀架構 191
12.4 技術領導力 196
12.5 DevOps 197
12.6 當微服務遇上傳統的IT組織 198
12.7 與客戶的接洽 201
12.8 可復用代碼 202
12.9 能否採用微服務而不改變組織 204
12.10 總結 206
第四部分 技術
第 13章 微服務架構示例 210
13.1 領域架構 210
13.2 基本技術 212
13.3 構建 216
13.4 使用Docker進行部署. 217
13.5 Vagrant 218
13.6 Docker Machine 222
13.7 Docker Compose 223
13.8 服務發現 226
13.9 通信 228
13.10 容錯性 230
13.11 負載均衡 234
13.12 集成其他技術 235
13.13 測試 236
13.14 基於JVM的微服務在Amazon Cloud中運行的實踐 237
13.15 總結 239
第 14章 納米服務技術 241
14.1 為什麼採用納米服務 241
14.2 納米服務:定義 243
14.3 Amazon Lambda 244
14.4 OSGi 245
14.5 Java EE 248
14.6 Vert.x 251
14.7 Erlang 252
14.8 Seneca 255
14.9 總結 257
第 15章 把微服務用起來 259
15.1 為什麼選擇微服務 259
15.2 微服務實踐之路 260
15.3 微服務:能否落地 260
15.4 總結 261

相關詞條

熱門詞條

聯絡我們