定 價(jià):¥99.00
作 者: | 任鋼 |
出版社: | 電子工業(yè)出版社 |
叢編項(xiàng): | |
標(biāo) 簽: | 暫缺 |
ISBN: | 9787121368721 | 出版時(shí)間: | 2019-08-01 | 包裝: | 平裝 |
開(kāi)本: | 16開(kāi) | 頁(yè)數(shù): | 436 | 字?jǐn)?shù): |
第1部分 微服務(wù)體系概述 1
第1章 微服務(wù)概述 2
1.1 微服務(wù)史話 2
1.1.1 微服務(wù)史話總述 2
1.1.2 第一個(gè)時(shí)代是單體應(yīng)用的C/S客戶服務(wù)器時(shí)代 4
1.1.3 第二個(gè)時(shí)代是分布式組件化應(yīng)用時(shí)代 5
1.1.4 第三個(gè)時(shí)代是SOA(面向服務(wù)架構(gòu))時(shí)代 6
1.1.5 第四個(gè)時(shí)代是微服務(wù)架構(gòu)時(shí)代 8
1.2 現(xiàn)階段微服務(wù)的基本概念 10
1.2.1 微服務(wù)的基本概念 10
1.2.2 微服務(wù)的內(nèi)涵和外延 12
1.2.3 微服務(wù)架構(gòu)(MSA)的定義 13
1.2.4 MSA和SOA的比較 14
1.3 關(guān)于微服務(wù)的一些辯證關(guān)系 16
1.3.1 選擇單體應(yīng)用系統(tǒng)和微服務(wù)應(yīng)用系統(tǒng)的辯證關(guān)系 16
1.3.2 微服務(wù)顆粒度大小的辯證關(guān)系 17
1.3.3 微服務(wù)進(jìn)程內(nèi)外之間的辯證關(guān)系 17
1.3.4 組件獨(dú)立性和共享性之間的辯證關(guān)系 17
1.3.5 關(guān)于去中心化和管理規(guī)范化之間的辯證關(guān)系 17
1.3.6 松耦合和敏捷性要求之間的辯證關(guān)系 17
1.3.7 投入成本和復(fù)雜度之間的辯證關(guān)系 18
1.3.8 微服務(wù)靈活性與性能的辯證關(guān)系 18
1.3.9 微服務(wù)安全性與無(wú)狀態(tài)性之間的辯證關(guān)系 18
1.4 微服務(wù)是未來(lái)方向嗎 18
1.5 本章小結(jié) 19
第2章 微服務(wù)體系概況 20
2.1 關(guān)于體系化 20
2.1.1 體系化的整體性 20
2.1.2 體系化的結(jié)構(gòu)性 21
2.1.3 體系化的綜合性 21
2.1.4 體系化的動(dòng)態(tài)性 21
2.2 采用微服務(wù)的愿景 22
2.3 微服務(wù)體系的概念 23
2.3.1 關(guān)于微服務(wù)體系的特征 24
2.3.2 微服務(wù)體系的整體性 25
2.3.3 微服務(wù)體系的結(jié)構(gòu)性 26
2.3.4 微服務(wù)體系的綜合性 27
2.3.5 微服務(wù)體系的動(dòng)態(tài)性 28
2.4 微服務(wù)體系建設(shè)方法論 29
2.5 微服務(wù)體系與云原生架構(gòu)的區(qū)別 30
2.5.1 云原生架構(gòu)簡(jiǎn)介 30
2.5.2 微服務(wù)體系與云原生架構(gòu)的不同之處 32
2.6 微服務(wù)體系與API開(kāi)放框架平臺(tái)的關(guān)系 33
2.7 微服務(wù)體系生態(tài)系統(tǒng) 35
2.8 本章小結(jié) 36
第2部分 微服務(wù)技術(shù)體系 37
第3章 微服務(wù)技術(shù)體系及實(shí)現(xiàn)技術(shù) 39
3.1 微服務(wù)技術(shù)體系的體系化 39
3.1.1 基本概念澄清 39
3.1.2 微服務(wù)技術(shù)體系的整體性 41
3.1.3 微服務(wù)技術(shù)體系的結(jié)構(gòu)性 42
3.2 微服務(wù)技術(shù)體系的層次及其關(guān)系 42
3.2.1 總體層次結(jié)構(gòu) 42
3.2.2 微服務(wù)技術(shù)體系的實(shí)現(xiàn)技術(shù)體系 45
3.2.3 微服務(wù)技術(shù)體系的技術(shù)架構(gòu)體系 46
3.2.4 微服務(wù)技術(shù)體系的技術(shù)框架體系 46
3.2.5 微服務(wù)技術(shù)體系的集成環(huán)境平臺(tái) 47
3.2.6 微服務(wù)技術(shù)體系的基礎(chǔ)設(shè)施環(huán)境 47
3.3 微服務(wù)的實(shí)現(xiàn)技術(shù) 48
3.3.1 總體說(shuō)明 48
3.3.2 通信技術(shù) 48
3.3.3 分布式架構(gòu) 57
3.3.4 容器技術(shù) 75
3.3.5 安全協(xié)議 80
3.4 實(shí)現(xiàn)微服務(wù)的集成平臺(tái)自動(dòng)化工具 84
3.4.1 集成平臺(tái)自動(dòng)化工具綜述 84
3.4.2 研發(fā)自動(dòng)化工具 85
3.4.3 CI/CD自動(dòng)化工具 86
3.4.4 運(yùn)維自動(dòng)化工具 88
3.5 微服務(wù)的基礎(chǔ)設(shè)施環(huán)境 92
3.5.1 IaaS平臺(tái) 92
3.5.2 云管理平臺(tái) 93
3.6 本章小結(jié) 96
第4章 微服務(wù)技術(shù)架構(gòu)體系 98
4.1 微服務(wù)技術(shù)架構(gòu)體系概述 98
4.1.1 微服務(wù)技術(shù)架構(gòu)的概念 98
4.1.2 微服務(wù)技術(shù)架構(gòu)的整體性 100
4.1.3 微服務(wù)技術(shù)架構(gòu)的優(yōu)勢(shì)和挑戰(zhàn) 101
4.2 微服務(wù)運(yùn)行時(shí)服務(wù)架構(gòu)的組成部分 103
4.2.1 微服務(wù)組件的形式和特征 103
4.2.2 微服務(wù)組件的調(diào)用方式 103
4.2.3 微服務(wù)組件的契約驅(qū)動(dòng)模式 104
4.3 微服務(wù)運(yùn)行時(shí)基礎(chǔ)架構(gòu)的組成部分 105
4.3.1 微服務(wù)運(yùn)行時(shí)基礎(chǔ)架構(gòu)概述 105
4.3.2 微服務(wù)的服務(wù)發(fā)現(xiàn)和注冊(cè)組件 107
4.3.3 微服務(wù)的API網(wǎng)關(guān)組件 116
4.3.4 微服務(wù)的服務(wù)容錯(cuò)組件及其模式 122
4.3.5 監(jiān)控告警日志組件 146
4.3.6 認(rèn)證授權(quán)組件 158
4.3.7 統(tǒng)一配置管理組件 165
4.4 微服務(wù)運(yùn)行時(shí)后端架構(gòu)的組成部分 169
4.4.1 消息隊(duì)列中間件 169
4.4.2 關(guān)系存儲(chǔ)及其相關(guān)管理工具 169
4.4.3 分布式NoSQL數(shù)據(jù)庫(kù) 169
4.4.4 NewSQL數(shù)據(jù)存儲(chǔ)區(qū) 170
4.4.5 文件數(shù)據(jù)存儲(chǔ)區(qū) 170
4.4.6 數(shù)據(jù)流平臺(tái) 170
4.5 微服務(wù)技術(shù)架構(gòu)設(shè)計(jì)模式 170
4.5.1 微服務(wù)技術(shù)架構(gòu)設(shè)計(jì)模式概述 171
4.5.2 常用的微服務(wù)技術(shù)架構(gòu)設(shè)計(jì)模式 171
4.5.3 微服務(wù)技術(shù)架構(gòu)設(shè)計(jì)模式及其特性 172
4.6 本章小結(jié) 179
第5章 微服務(wù)技術(shù)框架體系 181
5.1 微服務(wù)技術(shù)框架概述 181
5.1.1 微服務(wù)技術(shù)框架的基本概念 181
5.1.2 微服務(wù)技術(shù)框架實(shí)現(xiàn)的功能 181
5.1.3 微服務(wù)技術(shù)框架分類 183
5.1.4 選擇微服務(wù)技術(shù)框架需要考慮的因素 185
5.2 開(kāi)發(fā)型微服務(wù)基礎(chǔ)框架平臺(tái) 186
5.2.1 Netflix微服務(wù)框架 186
5.2.2 Spring Cloud微服務(wù)框架 188
5.2.3 Microsoft Azure Service Fabric微服務(wù)框架 191
5.2.4 Lightbend的Lagom框架 194
5.2.5 Microdot Framework微服務(wù)框架 196
5.2.6 Dubbo分布式服務(wù)框架 197
5.2.7 Spotify的Apollo框架 199
5.2.8 Steeltoe微服務(wù)框架 200
5.2.9 其他的微服務(wù)框架 202
5.3 運(yùn)維型微服務(wù)基礎(chǔ)框架平臺(tái) 204
5.3.1 Kubernetes微服務(wù)框架 204
5.3.2 Docker Swarm微服務(wù)框架 212
5.3.3 ZeroC IceGrid微服務(wù)框架 215
5.3.4 Istio微服務(wù)框架 217
5.4 Serverless型微服務(wù)基礎(chǔ)框架平臺(tái) 219
5.4.1 Serverless型微服務(wù)基礎(chǔ)框架平臺(tái)架構(gòu) 219
5.4.2 AWS Lambda框架 222
5.4.3 其他的Serverless框架平臺(tái) 224
5.5 微服務(wù)開(kāi)發(fā)框架平臺(tái) 225
5.5.1 總體說(shuō)明 225
5.5.2 基于Java的微服務(wù)開(kāi)發(fā)框架 226
5.5.3 基于Microsoft.NET Framework的微服務(wù)開(kāi)發(fā)框架 232
5.5.4 基于JavaScript的微服務(wù)開(kāi)發(fā)框架 233
5.5.5 基于PHP的微服務(wù)開(kāi)發(fā)框架 233
5.5.6 基于Go語(yǔ)言的微服務(wù)開(kāi)發(fā)框架 234
5.5.7 基于Python語(yǔ)言的微服務(wù)開(kāi)發(fā)框架 234
5.6 本章小結(jié) 234
第3部分 微服務(wù)業(yè)務(wù)體系 237
第6章 微服務(wù)業(yè)務(wù)體系概述 238
6.1 微服務(wù)業(yè)務(wù)體系的定義 238
6.2 與微服務(wù)業(yè)務(wù)體系相關(guān)的一些基本概念 242
6.2.1 技術(shù)微服務(wù)和業(yè)務(wù)微服務(wù) 242
6.2.2 業(yè)務(wù)服務(wù)和業(yè)務(wù)微服務(wù) 242
6.2.3 業(yè)務(wù)微服務(wù)設(shè)計(jì)層和業(yè)務(wù)微服務(wù)實(shí)現(xiàn)層 243
6.2.4 微服務(wù)技術(shù)架構(gòu)和微服務(wù)業(yè)務(wù)架構(gòu) 243
6.3 業(yè)務(wù)微服務(wù)解決的核心問(wèn)題 244
6.3.1 業(yè)務(wù)微服務(wù)的邊界 244
6.3.2 業(yè)務(wù)微服務(wù)的顆粒度大小 247
6.4 業(yè)務(wù)微服務(wù)的組織和集成 249
6.4.1 業(yè)務(wù)微服務(wù)的內(nèi)部構(gòu)成 249
6.4.2 業(yè)務(wù)微服務(wù)的內(nèi)部設(shè)計(jì)模式 250
6.4.3 業(yè)務(wù)微服務(wù)的外部關(guān)系集成 259
6.5 實(shí)現(xiàn)業(yè)務(wù)微服務(wù)的相關(guān)架構(gòu) 260
6.6 本章小結(jié) 261
第7章 業(yè)務(wù)微服務(wù)分析設(shè)計(jì)方法論 263
7.1 總體說(shuō)明和業(yè)務(wù)場(chǎng)景描述 263
7.1.1 業(yè)務(wù)微服務(wù)的組成部分 263
7.1.2 業(yè)務(wù)邏輯的架構(gòu)模式及實(shí)現(xiàn) 264
7.1.3 業(yè)務(wù)場(chǎng)景描述 265
7.2 普通服務(wù)分析和設(shè)計(jì) 270
7.2.1 資產(chǎn)管理微服務(wù)分析和定義 270
7.2.2 普通服務(wù)分析和設(shè)計(jì)概述 271
7.2.3 具體應(yīng)用場(chǎng)景的普通服務(wù)分析和設(shè)計(jì) 273
7.3 領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)和微服務(wù) 279
7.3.1 領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)概述 279
7.3.2 基于領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的業(yè)務(wù)微服務(wù)架構(gòu) 282
7.3.3 基于領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的業(yè)務(wù)微服務(wù)架構(gòu)設(shè)計(jì)和實(shí)現(xiàn) 284
7.4 六邊形架構(gòu)分析和設(shè)計(jì) 292
7.4.1 六邊形架構(gòu)概述 292
7.4.2 基于六邊形架構(gòu)的業(yè)務(wù)微服務(wù)架構(gòu) 295
7.4.3 基于六邊形架構(gòu)的業(yè)務(wù)微服務(wù)設(shè)計(jì)和實(shí)現(xiàn) 297
7.5 Clean架構(gòu)分析和設(shè)計(jì) 304
7.5.1 Clean架構(gòu)概述 304
7.5.2 基于Clean架構(gòu)的業(yè)務(wù)微服務(wù)架構(gòu) 307
7.5.3 基于Clean架構(gòu)案例的設(shè)計(jì)和實(shí)現(xiàn) 308
7.6 DCI架構(gòu)分析和設(shè)計(jì) 311
7.6.1 DCI架構(gòu)概述 311
7.6.2 基于DCI架構(gòu)的業(yè)務(wù)微服務(wù)架構(gòu) 314
7.6.3 基于DCI架構(gòu)的業(yè)務(wù)微服務(wù)架構(gòu)設(shè)計(jì)和實(shí)現(xiàn) 315
7.7 CQRS架構(gòu)分析和設(shè)計(jì) 318
7.7.1 CQRS架構(gòu)概述 318
7.7.2 基于CQRS架構(gòu)的業(yè)務(wù)微服務(wù)架構(gòu) 319
7.7.3 基于CQRS架構(gòu)的業(yè)務(wù)微服務(wù)架構(gòu)設(shè)計(jì)和實(shí)現(xiàn) 320
7.8 本章小結(jié) 321
第4部分 微服務(wù)管理體系 323
第8章 微服務(wù)管理體系概述 324
8.1 微服務(wù)管理體系的定義 324
8.2 微服務(wù)管理體系的內(nèi)容 325
8.3 微服務(wù)應(yīng)用成熟度級(jí)別 327
8.3.1 定義微服務(wù)應(yīng)用成熟度級(jí)別的緣由 327
8.3.2 微服務(wù)應(yīng)用成熟度級(jí)別及其特征 327
8.3.3 產(chǎn)品級(jí)微服務(wù)應(yīng)用成熟度特征描述 329
8.4 微服務(wù)應(yīng)用的“12要素”原則 333
8.4.1 “12要素”原則簡(jiǎn)介 334
8.4.2 微服務(wù)應(yīng)用的“12要素”原則 334
8.5 微服務(wù)規(guī)范 339
8.5.1 微服務(wù)規(guī)范和工具概述 339
8.5.2 微服務(wù)基礎(chǔ)規(guī)范 340
8.5.3 微服務(wù)技術(shù)規(guī)范 340
8.5.4 微服務(wù)管理規(guī)范 340
8.6 微服務(wù)度量指標(biāo) 342
8.6.1 度量指標(biāo)概述 342
8.6.2 微服務(wù)的8個(gè)度量指標(biāo) 343
8.7 本章小結(jié) 349
第9章 微服務(wù)應(yīng)用的組織、人員和文化 350
9.1 單體架構(gòu)應(yīng)用的團(tuán)隊(duì)問(wèn)題 350
9.2 微服務(wù)對(duì)組織、人員和文化的影響 351
9.2.1 圍繞業(yè)務(wù)功能的組織 352
9.2.2 開(kāi)發(fā)團(tuán)隊(duì)和運(yùn)維團(tuán)隊(duì)不能分離 352
9.2.3 微服務(wù)團(tuán)隊(duì)的決策機(jī)制 352
9.2.4 微服務(wù)團(tuán)隊(duì)的規(guī)模 353
9.2.5 微服務(wù)對(duì)運(yùn)維方式的影響 353
9.3 根據(jù)微服務(wù)的需要調(diào)整組織、人員和文化 354
9.3.1 組織團(tuán)隊(duì)的調(diào)整 354
9.3.2 倡導(dǎo)新文化和新行為 357
9.3.3 培養(yǎng)必要的新技能和新能力 358
9.3.4 微服務(wù)化小團(tuán)隊(duì)的組織和管理 359
9.3.5 組織結(jié)構(gòu)的INVEST原則 360
9.4 本章小結(jié) 361
第10章 微服務(wù)的開(kāi)發(fā)和運(yùn)維流程 362
10.1 軟件開(kāi)發(fā)流程的演化歷史 362
10.1.1 瀑布開(kāi)發(fā)模式 362
10.1.2 快速原型模式 363
10.1.3 迭代模式 364
10.1.4 敏捷開(kāi)發(fā)模式 366
10.1.5 微服務(wù)開(kāi)發(fā)模式 367
10.1.6 DevOps模式 367
10.2 DevOps概述 368
10.2.1 DevOps的定義及其內(nèi)容 368
10.2.2 企業(yè)實(shí)施DevOps的方式 369
10.2.3 微服務(wù)架構(gòu)對(duì)DevOps的影響 370
10.3 在微服務(wù)下DevOps的實(shí)現(xiàn) 371
10.3.1 微服務(wù)的開(kāi)發(fā)和運(yùn)維流程概述 371
10.3.2 更多、更快地響應(yīng)業(yè)務(wù)需求 373
10.3.3 開(kāi)發(fā)和運(yùn)維過(guò)程管理的敏捷性 374
10.3.4 優(yōu)化質(zhì)量保證流程 375
10.3.5 加強(qiáng)安全和治理管理 376
10.3.6 整合工具鏈構(gòu)建DevOps平臺(tái) 377
10.4 本章小結(jié) 378
第5部分 微服務(wù)體系建設(shè)實(shí)踐 379
第11章 傳統(tǒng)架構(gòu)遷徙到微服務(wù)架構(gòu) 380
11.1 遷徙的必要性 380
11.1.1 外部環(huán)境的挑戰(zhàn) 380
11.1.2 業(yè)務(wù)方面的原因 381
11.1.3 技術(shù)方面的原因 382
11.1.4 管理方面的原因 383
11.2 需要考慮的問(wèn)題 383
11.2.1 業(yè)務(wù)方面的問(wèn)題 383
11.2.2 技術(shù)方面的問(wèn)題 383
11.2.3 管理方面的問(wèn)題 384
11.2.4 支撐方面的問(wèn)題 384
11.3 傳統(tǒng)架構(gòu)遷徙到微服務(wù)架構(gòu)的原則 385
11.4 傳統(tǒng)架構(gòu)遷徙到微服務(wù)架構(gòu)的策略 385
11.4.1 整體改造,一步到位策略 386
11.4.2 試點(diǎn)入手,逐步推進(jìn)策略 386
11.4.3 新功能、新服務(wù)策略 386
11.4.4 膠水層策略 387
11.4.5 絞殺策略 388
11.5 傳統(tǒng)架構(gòu)遷徙到微服務(wù)架構(gòu)的實(shí)施流程 389
11.5.1 當(dāng)前系統(tǒng)梳理和需求整理 389
11.5.2 確定目標(biāo)、原則和策略 390
11.5.3 規(guī)劃和計(jì)劃 391
11.5.4 技術(shù)選型和確定 392
11.5.5 業(yè)務(wù)分析和拆分 395
11.5.6 團(tuán)隊(duì)、流程和人員改進(jìn) 397
11.5.7 實(shí)施管理 398
11.5.8 演化和改進(jìn) 399
11.6 本章小結(jié) 400
第12章 新建系統(tǒng)的業(yè)務(wù)微服務(wù)全生命周期過(guò)程 402
12.1 業(yè)務(wù)微服務(wù)全生命周期過(guò)程概述 402
12.2 產(chǎn)品或平臺(tái)微服務(wù)化需要考慮的問(wèn)題 402
12.2.1 是否一定要采用微服務(wù)架構(gòu) 403
12.2.2 平臺(tái)微服務(wù)架構(gòu)設(shè)計(jì)的思考維度 403
12.2.3 產(chǎn)品或平臺(tái)微服務(wù)的基本原則 404
12.3 產(chǎn)品或平臺(tái)業(yè)務(wù)微服務(wù)的建設(shè)步驟 404
12.3.1 平臺(tái)業(yè)務(wù)微服務(wù)的架構(gòu)愿景 405
12.3.2 平臺(tái)業(yè)務(wù)微服務(wù)的規(guī)劃、原則和策略 406
12.3.3 業(yè)務(wù)微服務(wù)的識(shí)別和分析 407
12.3.4 業(yè)務(wù)微服務(wù)的應(yīng)用場(chǎng)景分析(服務(wù)建模) 408
12.3.5 業(yè)務(wù)微服務(wù)的設(shè)計(jì) 409
12.3.6 業(yè)務(wù)微服務(wù)的實(shí)現(xiàn) 410
12.3.7 業(yè)務(wù)微服務(wù)的應(yīng)用 410
12.3.8 業(yè)務(wù)微服務(wù)的改進(jìn)和退出 411
12.4 本章小結(jié) 412