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