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