Spring Cloud Alibaba微服務(wù)實戰(zhàn)
定 價:79 元
- 作者:周仲清
- 出版時間:2021/6/1
- ISBN:9787301322710
- 出 版 社:北京大學(xué)出版社
- 中圖法分類:TP368.5
- 頁碼:328
- 紙張:
- 版次:1
- 開本:16開
本書從初學(xué)者的角度出發(fā),從微服務(wù)基礎(chǔ)理論開始,基于Spring Boot框架搭建微服務(wù)系統(tǒng)。介紹了使用Spring Cloud Alibaba套件及其他熱門微服務(wù)組件構(gòu)建微服務(wù)系統(tǒng)的方法、微服務(wù)系統(tǒng)中常見的問題及解決方案,以及如何快速部署項目,使讀者從開發(fā)到上線整體流程有一個清晰的認(rèn)識。
本書分為14章。第1~3章主要介紹了微服務(wù)的基礎(chǔ)理論和配置基礎(chǔ)開發(fā)環(huán)境的方法,以及如何構(gòu)建Spring Cloud Alibaba模板項目;第4~13章主要介紹了如何使用Spring Cloud Alibaba套件(Nacos、Sentinel等)和當(dāng)下流行的微服務(wù)組件(如Spring Cloud Gateway、Spring Cloud Stream等)搭建微服務(wù)系統(tǒng),解決開發(fā)中的常見問題;第14章主要介紹了如何使用Jenkins + Gitlab + Docker部署服務(wù),使其又快又穩(wěn)。通過對本書的學(xué)習(xí),讀者能夠熟知程序由開發(fā)到上線的整體流程。
本書內(nèi)容豐富,案例通俗易懂,幾乎涵蓋了目前Spring Cloud的全部熱門組件,特別適合想要了解Spring Cloud熱門組件以及想搭建微服務(wù)系統(tǒng)的讀者閱讀。
周仲清,廣橫易科技有限公司技術(shù)專家,先后擔(dān)任過技術(shù)組長、技術(shù)總監(jiān)。負(fù)責(zé)公司基礎(chǔ)架構(gòu)建設(shè)、業(yè)務(wù)代碼編寫、服務(wù)部署上線,以及解決線上問題。近6年來主要從事連接服務(wù)、數(shù)據(jù)爬蟲、微服務(wù)系統(tǒng)開發(fā)、微服務(wù)服務(wù)架構(gòu)部署、參數(shù)調(diào)優(yōu)等。
第1章 微服務(wù)概述 1
1.1單體架構(gòu)、SOA 和微服務(wù) 2
1.2為什么使用微服務(wù) 2
1.3小結(jié) 4
第2章 微服務(wù)技術(shù)棧 5
2.1微服務(wù)所需要的技術(shù)棧 6
2.2Spring Cloud 技術(shù)棧對應(yīng)實現(xiàn)概覽 6
2.3Spring Cloud Alibaba 簡介 7
2.4小結(jié) 7
第3章 環(huán)境搭建 8
3.1Java 開發(fā)環(huán)境配置 9
3.2MySql 的安裝和配置 9
3.3Spring Boot 的起步 13
3.4建立 Spring Cloud Alibaba 模板項目 15
3.5小結(jié) 16
第4章 服務(wù)命名管理、配置中心、注冊中心——Nacos 17
4.1Nacos 簡介 18
4.2Nacos 下載和安裝 18
4.3使用 Nacos 服務(wù)注冊中心功能 19
4.4使用 Nacos 配置中心功能 26
4.5Nacos 持久化配置 33
4.6Nacos 集群部署 35
4.7注冊中心產(chǎn)品對比 47
4.8Nacos 的 CP 和 AP 48
4.9源碼分析 49
4.10小結(jié) 107
第5章 遠(yuǎn)程調(diào)用——RestTemplate+Ribbon 108
5.1RestTemplate 簡介 109
5.2Ribbon 簡介 109
5.3Ribbon 自帶的負(fù)載均衡規(guī)則 109
5.4替換 Ribbon 的負(fù)載均衡規(guī)則 110
5.5RandomRule 規(guī)則源碼解析 111
5.6自定義負(fù)載均衡規(guī)則 113
5.7小結(jié) 114
第6章 流量控制框架——Sentinel 115
6.1Sentinel 簡介 116
6.2Sentinel 同類產(chǎn)品對比 116
6.3下載和運行 117
6.4項目集成 Sentinel 118
6.5使用 Sentinel 常用規(guī)則 122
6.6使用 @SentinelResource 注解 131
6.7Sentinel 數(shù)據(jù)持久化 139
6.8集群流控 146
6.9小結(jié) 154
第7章 遠(yuǎn)程調(diào)用——OpenFeign 155
7.1OpenFeign 簡介 156
7.2集成 OpenFeign 156
7.3代碼小優(yōu)化 159
7.4結(jié)合 Sentinel 規(guī)則使用 160
7.5對于異常情況的處理 160
7.6實現(xiàn)負(fù)載均衡 161
7.7OpenFeign 超時配置 162
7.8OpenFeign 詳細(xì)日志 164
7.9請求和響應(yīng)壓縮 166
7.10傳遞參數(shù) 168
7.11小結(jié) 172
第8章 遠(yuǎn)程調(diào)用——Dubbo Spring Cloud 173
8.1Dubbo Spring Cloud 簡介 174
8.2Dubbo Spring Cloud 主要特性 174
8.3代碼集成 Dubbo Spring Cloud 174
8.4傳遞對象 178
8.5結(jié)合 Sentinel 功能 180
8.6實現(xiàn)負(fù)載均衡 181
8.7小結(jié) 181
第9章 服務(wù)網(wǎng)關(guān)——Spring Cloud Gateway 182
9.1Spring Cloud Gateway 簡介 183
9.2集成 Spring Cloud Gateway 183
9.3整合 Nacos 186
9.4Predicate( 斷言 ) 188
9.5Filter( 過濾器 ) 194
9.6整合 Sentinel 功能 202
9.7超時配置 206
9.8CORS 配置 207
9.9關(guān)于網(wǎng)關(guān)高可用 209
9.10小結(jié) 210
第 10 章 解決分布式事務(wù)——Seata 211
10.1分布式事務(wù)問題 212
10.2分布式事務(wù)問題演示 212
10.3分布式事務(wù)解決方案概覽 217
10.4Seata 簡介 221
10.5Seata 下載、安裝和配置 222
10.6整合 Seata 解決分布式事務(wù)問題 223
10.7Seata 運行流程解析 231
10.8Seata 服務(wù)端高可用 232
10.9小結(jié) 233
第 11 章 整合消息系統(tǒng)——Spring Cloud Stream 234
11.1Spring Cloud Stream 簡介 235
11.2常用注解介紹 236
11.3RocketMQ 簡介 236
11.4下載、安裝和啟動 RocketMQ 236
11.5編寫 Spring Cloud Stream+RocketMQ 消息生產(chǎn)者代碼 237
11.6編寫 Spring Cloud Stream+RocketMQ 消息消費者代碼 239
11.7驗證消息生產(chǎn)和消息消費 241
11.8發(fā)送對象消息 242
11.9關(guān)于重復(fù)消費問題 243
11.10消息過濾 243
11.11異常處理 246
11.12事務(wù)消息 247
11.13Spring Cloud Stream 的監(jiān)控 251
11.14 小結(jié) 252
第 12 章 分布式鏈路追蹤——SkyWalking 253
12.1SkyWalking 簡介 254
12.2同類產(chǎn)品對比 254
12.3Elasticsearch 簡介 255
12.4下載和安裝 Elasticsearch 255
12.5下載和安裝 SkyWalking 258
12.6IDEA 使用 agent 260
12.7忽略端點 263
12.8 告警 264
12.9性能分析 268
12.10Tomcat 或 Jar 包使用 agent 269
12.11配置賬號密碼登錄 270
12.12 小結(jié) 271
第 13 章 分布式任務(wù)調(diào)度框架——XXL-JOB 272
13.1 原生定時任務(wù)的缺陷 273
13.2XXL-JOB 簡介 273
13.3下載源碼和運行 XXL-JOB 調(diào)度中心 274
13.4創(chuàng)建執(zhí)行器項目 276
13.5使用第一個 GLUE(Java)任務(wù) 278
13.6BEAN 模式普通任務(wù) 280
13.7執(zhí)行器集群和 BEAN 模式分片任務(wù) 281
13.8調(diào)度中心和執(zhí)行器的集群 283
13.9小結(jié) 284
第 14 章 部署項目 285
14.1打包項目 286
14.2命令行部署運行 287
14.3Jenkins 部署運行 287
14.4Docker 部署運行 303
14.5Jenkins+Gitlab+Docker 部署運行 312
14.6小結(jié) 315