《Spring Cloud 微服務開發實戰-微課視頻版》是清華大學出版社出版的圖書。
基本信息,內容簡介,圖書目錄,
基本信息
Spring Cloud 微服務開發實戰-微課視頻版
作者:吳勝
內容簡介
本書先介紹Spring Cloud概述,Spring Cloud 路由、服務註冊與發現、認證與鑒權、斷路器、配置中心、服務監控與跟蹤、訊息、其他組件(如Task等)的套用,阿里系Dubbo生態系統(Spring Cloud Alibaba和Dubbo等)的套用。希望通過對Spring Cloud和Dubbo生態系統的介紹,加深讀者對微服務實現時方案可選性的認識。然後,結合一個簡單案例演示了基於Spring Cloud的微服務開發過程。最後,簡單介紹Service Mesh(服務格線)和Spring Cloud Sidecar的套用,說明微服務開發的新思路。
本書由淺入深結合示例介紹各個知識點;並以回響客戶端服務請求的處理順序和開發步驟來組織章節內容;還配備了示例的操作視頻;可以幫助讀者更好地理解、掌握Spring Cloud微服務開發技術。
圖書目錄
第1章Spring Cloud概述
1.1Spring Cloud簡介
1.1.1Spring的構成
1.1.2Spring Cloud的構成
1.2Spring Cloud的特徵
1.2.1Spring Boot與Spring Cloud的共同特點
1.2.2Spring Cloud的其他特點
1.3配置開發環境
1.3.1安裝JDK
1.3.2安裝IntelliJ IDEA
1.4創建項目與實現微服務
1.4.1利用IDEA創建項目
1.4.2創建項目的基本構成情況
1.4.3基於Spring Boot的微服務實現
1.5Spring Cloud微服務開發起步
1.5.1軟體生命周期
1.5.2Spring Cloud回響服務請求的處理順序
1.5.3Spring Cloud微服務開發的步驟
習題1
第2章Spring Cloud路由的套用
2.1服務網關與Spring Cloud 路由簡介
2.1.1服務網關的作用
2.1.2Spring Cloud路由的相關技術
2.2Spring Cloud Gateway路由的套用
2.2.1創建項目並添加依賴
2.2.2創建類HelloController
2.2.3修改配置檔案application.properties
2.2.4修改入口類
2.2.5運行程式
2.2.6程式擴展
2.3Spring Cloud Gateway過濾器的套用
2.3.1創建項目並添加依賴
2.3.2創建類HelloController
2.3.3創建類ElapsedFilter
2.3.4修改入口類
2.3.5運行程式
2.4Spring Cloud Feign的套用
2.4.1創建項目並添加依賴
2.4.2創建接口FeignService
2.4.3創建類FeignController
2.4.4修改入口類
2.4.5運行程式
2.5Spring Cloud Ribbon的套用
2.5.1創建項目並添加依賴
2.5.2創建類HelloController
2.5.3修改配置檔案application.properties
2.5.4修改入口類
2.5.5運行程式
2.5.6程式擴展
2.6Spring Cloud Zuul的套用
2.6.1創建項目並添加依賴
2.6.2創建配置檔案application.yml
2.6.3修改入口類
2.6.4運行程式
2.6.5程式擴展
習題2
第3章Spring Cloud服務發現的套用
3.1Spring Cloud服務註冊與發現的簡介
3.1.1服務的註冊和發現
3.1.2Spring Cloud服務發現解決方案
3.2Spring Cloud Eureka的套用
3.2.1Spring Cloud Eureka註冊中心的實現
3.2.2Spring Cloud Eureka服務提供者的實現
3.2.3Spring Cloud Eureka服務消費者的實現
3.2.4運行程式
3.3Spring Cloud Consul的套用
3.3.1Spring Cloud Consul服務提供者的實現
3.3.2Spring Cloud Consul服務消費者的實現
3.3.3運行程式
3.4Spring Cloud Zookeeper的套用
3.4.1Spring Cloud Zookeeper服務提供者的實現
3.4.2Spring Cloud Zookeeper 服務消費者的實現
3.4.3運行程式
習題3
第4章Spring Cloud認證與鑒權的套用
4.1Spring Cloud Security的簡單套用
4.1.1創建項目並添加依賴
4.1.2創建類HelloController
4.1.3創建配置檔案application.yml
4.1.4運行程式
4.1.5程式擴展
4.2Spring Cloud OAuth 2的簡單套用
4.2.1創建項目並添加依賴
4.2.2創建類HelloController
4.2.3創建檔案index.html
4.2.4創建配置檔案application.yml
4.2.5修改入口類
4.2.6運行程式
4.3JWT的簡單套用
4.3.1創建項目並添加依賴
4.3.2創建類User
4.3.3創建類TokenUserAuthentication
4.3.4創建類JwtUtil
4.3.5創建類HelloController
4.3.6創建檔案index.html
4.3.7創建配置檔案application.yml
4.3.8修改入口類
4.3.9運行程式
4.4Gateway、JWT、Actuator的綜合套用
4.4.1創建項目並添加依賴
4.4.2創建類JwtUtil
4.4.3創建類HelloController
4.4.4創建配置檔案application.yml
4.4.5修改入口類
4.4.6運行程式
4.5Eureka、Zuul、OAuth2和JWT的綜合套用
4.5.1zuulserver的實現
4.5.2authserver的實現
4.5.3clienta的實現
4.5.4運行程式
習題4
第5章Spring Cloud斷路器的套用
5.1Spring Cloud Hystrix的套用
5.1.1創建項目並添加依賴
5.1.2創建接口HiService
5.1.3創建類HiController
5.1.4創建類HelloController
5.1.5修改配置檔案application.properties
5.1.6修改入口類
5.1.7運行程式
5.2Spring Cloud Hystrix Dashboard的套用
5.2.1添加依賴
5.2.2修改入口類
5.2.3運行程式
5.3Spring Cloud Turbine的套用
5.3.1創建項目並添加依賴
5.3.2修改配置檔案application.properties
5.3.3修改入口類
5.3.4運行程式
習題5
第6章Spring Cloud配置中心的套用
6.1Spring Cloud Config Server的套用
6.1.1創建項目並添加依賴
6.1.2修改配置檔案application.properties
6.1.3修改入口類
6.1.4運行程式
6.2Spring Cloud Config Client的套用
6.2.1創建項目並添加依賴
6.2.2創建類HelloController
6.2.3修改配置檔案application.properties
6.2.4運行程式
6.3Spring Cloud Consul的套用
6.3.1創建項目並添加依賴
6.3.2創建配置檔案application.yml
6.3.3創建配置檔案bootstrap.yml
6.3.4修改入口類
6.3.5運行程式
6.4Spring Cloud Zookeeper的套用
6.4.1創建項目並添加依賴
6.4.2創建類HelloController
6.4.3創建配置檔案bootstrap.yml
6.4.4運行程式
習題6
第7章Spring Cloud服務跟蹤的套用
7.1Spring Cloud Sleuth的套用
7.1.1創建項目並添加依賴
7.1.2創建類SleuthService
7.1.3創建類SchedulingService
7.1.4創建類ThreadConfig
7.1.5創建類HelloController
7.1.6修改配置檔案application.properties
7.1.7運行程式
7.2Spring Cloud Zipkin的套用
7.2.1創建項目zipkinexample
7.2.2創建項目zipkinclient1
7.2.3創建項目zipkinuser1
7.2.4運行程式
習題7
第8章Spring Cloud訊息的套用
8.1Spring Cloud Bus的套用
8.1.1Spring Cloud Config Server的套用
8.1.2Spring Cloud Bus的套用實現
8.1.3運行程式
8.2Spring Cloud Stream的套用
8.2.1創建項目並添加依賴
8.2.2創建接口Sink
8.2.3創建類SinkReceiver
8.2.4創建配置檔案application.yml
8.2.5運行程式
習題8
第9章Spring Cloud其他組件的套用
9.1Spring Cloud Task的套用
9.1.1創建項目並添加依賴
9.1.2創建類ScheduledTask
9.1.3創建類HelloController
9.1.4創建配置檔案application.yml
9.1.5修改入口類
9.1.6運行程式
9.2Spring Cloud Function的套用
9.2.1創建項目並添加依賴
9.2.2創建類Greeter
9.2.3創建類HelloController
9.2.4運行程式
9.3Cloud Foundry的套用
9.3.1Cloud Foundry簡介
9.3.2利用Cloud Foundry平台部署Spring Boot套用
習題9
第10章Spring Cloud Alibaba的套用
10.1Spring Cloud Alibaba簡介
10.1.1Spring Cloud Alibaba主要功能
10.1.2Spring Cloud Alibaba 組件
10.2Nacos Config的套用
10.2.1創建項目並添加依賴
10.2.2創建類ConfigController
10.2.3創建並修改配置檔案bootstrap.properties
10.2.4運行程式
10.3Nacos Discovery的套用
10.3.1服務提供者的實現
10.3.2服務消費者的實現
10.3.3運行程式
10.4Sentinel的套用
10.4.1創建項目並添加依賴
10.4.2創建類HelloController
10.4.3修改配置檔案application.properties
10.4.4運行程式
10.5ACM的套用
10.5.1輔助工作
10.5.2創建項目並添加依賴
10.5.3創建類SampleController
10.5.4修改配置檔案application.properties
10.5.5運行程式
習題10
第11章Dubbo的套用
11.1Dubbo簡介
11.1.1Dubbo主要功能
11.1.2Dubbo Spring Boot簡介
11.2Dubbo的簡單套用
11.2.1服務提供者的實現
11.2.2服務消費者的實現
11.2.3運行程式
11.3Dubbo Spring Boot的套用
11.3.1服務提供者的實現
11.3.2服務消費者的實現
11.3.3運行程式
11.4Spring Cloud Dubbo的套用
11.4.1服務提供者的實現
11.4.2服務消費者的實現
11.4.3運行程式
習題11
第12章Spring Cloud的綜合套用案例
12.1實現配置中心caseconfigserver
12.1.1創建項目並添加依賴
12.1.2創建配置檔案application.yml
12.1.3修改入口類
12.1.4運行程式
12.2實現客戶端服務 caseeurekauserclient
12.2.1創建項目並添加依賴
12.2.2創建類User
12.2.3創建接口UserDao
12.2.4創建類UserController
12.2.5修改和創建配置檔案
12.2.6修改入口類
12.2.7運行程式
12.3實現服務消費端 caseuserribbon
12.3.1創建項目並添加依賴
12.3.2創建類User
12.3.3創建類UserRibbonService
12.3.4創建類UserController
12.3.5創建配置檔案application.yml
12.3.6修改入口類
12.3.7運行程式
12.4實現服務消費端caseservice
12.4.1創建項目並添加依賴
12.4.2創建類User
12.4.3創建接口UserFeignService
12.4.4創建類UserController
12.4.5修改配置檔案application.properties
12.4.6修改入口類
12.4.7運行程式
12.5實現路由網關casezuul
12.5.1創建項目並添加依賴
12.5.2創建配置檔案application.yml
12.5.3修改入口類
12.5.4運行程式
習題12
第13章Service Mesh與Spring Cloud Sidecar
13.1Service Mesh概述
13.1.1Service Mesh簡介
13.1.2Service Mesh的特點
13.1.3數據面和控制面
13.2Linkerd和Envoy簡介
13.2.1Linkerd簡介
13.2.2Envoy簡介
13.3Istio概述
13.3.1Istio簡介
13.3.2Istio核心功能
13.3.3Istio架構
13.3.4Istio套用的模擬
13.4Conduit概述
13.4.1Conduit簡介
13.4.2Conduit架構
13.5國內Service Mesh實踐簡介
13.5.1SOFAMesh簡介
13.5.2Dubbo Mesh簡介
13.5.3華為服務格線簡介
13.5.4京東服務格線簡介
13.5.5新浪微博Weibo Mesh簡介
13.5.6雲幫Rainbond服務格線簡介
13.6Spring Cloud Sidecar的套用
13.6.1創建項目並添加依賴
13.6.2修改配置檔案application.properties
13.6.3修改入口類
13.6.4創建nodeservice.js
13.6.5運行程式
習題13
附錄A相關軟體的安裝和配置
A.1JDK的安裝和配置
A.2Consul伺服器的配置
A.3ZooKeeper伺服器的配置
A.4Nacos伺服器的配置
附錄B基於Feign實現檔案傳送
B.1實現Eureka伺服器項目mweathereurekaserver
B.1.1新建項目並添加依賴
B.1.2修改入口類與創建配置檔案
B.2實現檔案接收者項目feignserver
B.2.1新建項目並添加依賴
B.2.2修改入口類和配置檔案
B.3實現檔案傳送者項目feignclient
B.3.1新建項目並添加依賴
B.3.2創建接口、類和修改配置檔案
B.4程式運行結果
附錄C基於Ribbon實現檔案上傳
C.1實現檔案上傳服務提供者項目uploadfile
C.1.1新建項目並添加依賴
C.1.2創建類
C.1.3新建檔案和修改配置檔案
C.2實現檔案上傳服務消費者項目fileuser
C.2.1新建項目並添加依賴
C.2.2創建類、修改配置檔案和配置檔案
C.3程式運行結果
附錄D簡易天氣預報系統的實現
D.1實現天氣服務提供者項目weatherbasic
D.1.1新建項目並添加依賴
D.1.2創建類、接口並修改配置檔案
D.2實現天氣服務消費者項目weatherclient
D.2.1新建項目並添加依賴
D.2.2創建類
D.2.3新建檔案和修改配置檔案
D.3程式運行結果
附錄EApollo和Zuul的整合開發
E.1Apollo配置中心的準備和啟動
E.1.1Apollo配置中心的準備
E.1.2Apollo配置中心的啟動
E.2本案例的結構說明和Apollo配置中心的內容設定
E.2.1本案例的結構說明
E.2.2Apollo配置中心的內容設定
E.3實現服務提供者項目apolloconfig
E.3.1新建項目並添加依賴
E.3.2創建類、檔案和修改配置檔案
E.4實現服務提供者項目apollouser
E.4.1新建項目並添加依賴
E.4.2創建類、檔案和修改配置檔案
E.5實現zuul項目zuulapollo
E.5.1新建項目並添加依賴
E.5.2創建類、修改入口類和配置檔案
E.6程式運行結果
E.6.1apolloconfig服務運行結果
E.6.2apollouser服務運行結果
E.6.3zuulapollo服務運行結果
附錄FSpring Cloud在微信小程式的簡單套用
F.1啟動作為後台的Spring Cloud微服務
F.1.1啟動Apollo配置中心
F.1.2保持後台服務不變
F.1.3在瀏覽器中直接訪問微服務的結果
F.2前端微信小程式套用的實現
F.2.1微信小程式的開發工具安裝和項目創建
F.2.2創建項目並新建、修改檔案
F.2.3微信小程式項目的運行結果
F.3Spring Cloud微服務和微信小程式整合的關鍵點
F.3.1兩者關聯的關鍵代碼
F.3.2注意事項
附錄GSpring Cloud和Vue.js的整合開發
G.1在IDEA中整合Spring Cloud和Vue.js
G.1.1Vue.js的安裝
G.1.2在IDEA中集成Vue.js
G.2Spring Cloud微服務和Vue.js整合示例的實現
G.2.1創建Vue.js項目helloworld
G.2.2後台服務
G.2.3運行結果
G.3Spring Cloud微服務和Vue.js整合的關鍵點
G.3.1兩者整合的關鍵
G.3.2結果對比
參考文獻