《微服務那些事兒》是2017年04月01日電子工業出版社出版的圖書,作者是紀曉峰。
基本介紹
- 書名:微服務那些事兒
- 作者:紀曉峰
- ISBN:9787121311420
- 類別:圖書>計算機/網路>計算機理論
- 頁數:206
- 定價:65元
- 出版社:電子工業出版社
- 出版時間:2017年04月01日
- 裝幀:平裝
- 開本:16開
編輯推薦,內容簡介,作者簡介,目 錄,
編輯推薦
本書以幽默風趣的語言生動地講述了微服務,將微服務相關的理論知識、技術實現和項目實踐一網打盡。
解密微服務Spring Boot Spring Cloud 技術實踐。
內容簡介
本書以幽默風趣的語言生動地講述了微服務,將微服務相關的理論知識、技術實現和項目實踐一網打盡。全書共分為三大部分:*部分為“微服務解惑篇”,讓讀者對微服務有一個清晰的認識,消除對微服務的種種疑惑,同時對用戶十分關注的如何拆分、如何使用等問題做了很全面的講解;第二部分為“技術實現篇”,通過對當前世界*為流行的微服務框架Spring Boot Spring Cloud的常用組件的詳細解讀以及其他相關技術、工具的介紹,來幫助讀者了解整體架構及其中各個組件的原理,結合代碼幫助讀者快速構建項目,搭建一個比較完整的微服務框架;第三部分為“項目實戰篇”,通過案例來展示不同業務系統在微服務使用過程中如何梳理業務、如何拆分、如何使用微服務重構等。
作者簡介
紀曉峰,現任某公司架構師,曾經在AC擔任微服務領域的諮詢師,長期供職於HP,具有豐富的架構設計和開發經驗,先後參與多個微服務項目。網名“叫我哲學家”,喜歡看書,鑽研技術,領悟其中原理,習慣於獨立思考,形成獨到的見解。
目 錄
第一部分 微服務解惑篇
第1章 微服務架構 2
1.1 不微你就OUT了 2
1.2 產生背景 3
1.2.1 時代的召喚 3
1.2.2 容器神助攻 4
1.2.3 微服務的進擊 4
1.3 微服務的標籤 5
1.3.1 單一職責 6
1.3.2 微 6
1.3.3 面向服務 7
1.3.4 自治 8
1.3.5 易擴展 9
1.3.6 流程化 10
1.4 實力碾壓 11
1.4.1 組件化 11
1.4.2 快速 13
1.4.3 可復用 13
1.4.4 機動靈活 13
1.5 不要奶我 14
1.5.1 不足 14
1.5.2 挑戰 15
1.5.3 小結 16
1.6 本章小結 17
第2章 為何選擇微服務 18
2.1 傳統架構的病 18
2.1.1 中年危機 18
2.1.2 寶寶心裡苦 19
2.2 微服務有藥 21
2.2.1 諱疾忌醫 21
2.2.2 朋友聽說過安利么 22
2.2.3 沙盤演練看效果 22
2.3 微服務的價值 23
2.3.1 資源價值 24
2.3.2 業務價值 24
2.3.3 技術價值 24
2.3.4 用戶價值 25
2.3.5 未來價值 25
2.3.6 小結 26
2.4 定個小目標 26
2.4.1 持續交付 26
2.4.2 業務敏捷 26
2.4.3 獨立演進 27
2.4.4 高可用 27
2.4.5 高性能 27
2.4.6 站在雲端 28
2.5 別人家的公司 28
2.6 來不及解釋快上車 29
第3章 我拆我拆我拆拆拆 30
3.1 拆還是不拆 30
3.2 如何拆 32
3.2.1 庖丁解牛 32
3.2.2 數據模型和業務模型 33
3.2.3 金字塔結構圖 33
3.2.4 關鍵指標 33
3.3 粒度 35
3.3.1 五筆字根 36
3.3.2 被遺忘的字典師傅 37
3.3.3 小結 37
3.4 邊界 37
3.5 本章小結 38
第4章 如何使用微服務 39
4.1 如何規劃 39
4.2 微服務重構 42
4.2.1 影響因素 42
4.2.2 重構原則 43
4.2.3 重構方法 44
4.3 本章小結 45
第5章 微服務的朋友圈 46
5.1 好朋友容器 46
5.1.1 容器的來歷 46
5.1.2 容器的好處 47
5.1.3 小結 49
5.2 天生一對DevOps 49
5.2.1 DevOps是什麼 49
5.2.2 為什麼採用DevOps 50
5.2.3 小結 51
5.3 SOA是誰 51
5.3.1 接著忽悠 52
5.3.2 SOA是個什麼鬼 52
5.3.3 小結 53
第二部分 技術實現篇
第6章 Spring Boot 56
6.1 介紹 56
6.2 特點 57
6.3 Spring Boot和微服務之間的關係 57
6.4 如何使用 58
6.5 可定製化 61
6.6 本章小結 64
第7章 Spring Cloud 65
7.1 Spring Cloud優勢 66
7.2 Spring Cloud特點 67
7.3 Spring Cloud之服務管理 68
7.4 註冊中心Eureka 69
7.4.1 什麼是註冊中心 69
7.4.2 為什麼要有註冊中心 69
7.4.3 Eureka來歷 70
7.4.4 Eureka機制 71
7.4.5 如何使用 72
7.5 網關Zuul 77
7.5.1 Zuul 78
7.5.2 反向代理 78
7.5.3 如何使用 79
7.6 客戶端負載均衡Ribbon 84
7.6.1 負載均衡 85
7.6.2 如何使用 85
7.6.3 補充說明 91
7.7 斷路器Hystrix 92
7.7.1 如何隔離 93
7.7.2 電路熔斷器模式 93
7.7.3 回滾降級 94
7.7.4 如何使用 95
7.7.5 交通疏導 101
7.7.6 小結 101
7.8 分散式配置中心Spring Cloud Config 101
7.8.1 為什麼要有配置 102
7.8.2 集中配置的好處 103
7.8.3 配置方式的演進 103
7.8.4 如何使用 104
7.9 服務之間調用Feign 114
7.9.1 Feign如何使用 114
7.9.2 補充說明 118
7.10 服務追蹤 119
7.10.1 Spring Cloud Sleuth介紹 119
7.10.2 Sleuth如何使用 120
7.10.3 日誌聚合Zipkin 122
7.10.4 小結 127
7.11 Spring Cloud和Dubbo的比較 127
7.11.1 生的偉大 127
7.11.2 死的憋屈 127
7.11.3 沒比較沒傷害 128
7.11.4 現狀 128
7.12 Spring Cloud與Spring Boot的關係 129
7.13 本章小結 130
第8章 其他相關技術和工具 131
8.1 資料庫開發持續集成工具Liquibase 131
8.1.1 特性 132
8.1.2 使用 136
8.2 Swagger 144
8.2.1 為什麼使用Swagger 144
8.2.2 如何使用 145
8.2.3 小結 149
8.3 許可權spring security 150
8.4 微服務架構的通信方式 152
8.4.1 同步 153
8.4.2 異步 156
8.5 服務編排 160
8.6 管理工具JIRA 162
第9章 測試相關 166
9.1 單元測試 166
9.1.1 Mockito如何使用 168
9.1.2 Mock 與InjectMocks的區別 171
9.2 接口測試 173
9.3 代碼質量管理工具Sonar 174
9.3.1 特點 174
9.3.2 使用 175
第三部分 項目實戰篇
第10章 三個典型系統案例 188
10.1 企業運營支撐系統 188
10.1.1 背景 188
10.1.2 現狀 188
10.1.3 原因調查 189
10.1.4 解決方案 190
10.2 車隊管理系統 193
10.2.1 背景 193
10.2.2 技術架構 193
10.2.3 服務如何拆分 194
10.3 財務管理系統 195
10.3.1 背景 195
10.3.2 現狀 195
10.3.3 原因調查 196
10.3.4 解決方案 196
10.4 本章小結 197
第11章 開發管理 198
11.1 管理原則 198
11.2 日常管理 198
11.3 代碼質量管理 199
11.4 工作方式 199
11.5 BA的職責 199
11.6 SA的職責 200
11.7 DEV的工作原則 201
11.8 本章小結 201
後記 202