Java知識分享網 - 輕松學習從此開始!????

Java知識分享網

Java1234官方群25:java1234官方群25
Java1234官方群25:838462530
     

GIT視頻教程(結合github,碼云)免費領取

BAT一線大廠筆試面試打包下載

java1234.vip企業級站點全新上線(可以領取站點源碼)

SpringBoot打造企業級進銷存

Java1234 VIP課程

領取微信掃碼登錄Java實現視頻教程

Java1234至尊VIP(特價活動)
當前位置: 主頁 > Java文檔 > JavaWeb技術相關 >

Spring Cloud Alibaba 微服務原理與實戰 PDF 下載


分享到:
時間:2020-07-12 14:23來源:http://www.luygg.com 作者:轉載  侵權舉報
Spring Cloud Alibaba 微服務原理與實戰 PDF 下載
失效鏈接處理
Spring Cloud Alibaba 微服務原理與實戰 PDF 下載


樣章整理下載:
版權歸出版社和原作者所有,鏈接已刪除,請購買正版
 
 
用戶下載說明:
電子版僅供預覽,下載后24小時內務必刪除,支持正版,喜歡的請購買正版書籍:
http://product.dangdang.com/28537704.html
  
相關截圖:


資料簡介:

本書針對Spring Cloud Alibaba生態下的技術組件從應用到原理進行全面的分析,涉及的技術組件包括分布式服務治理Dubbo、服務配置和服務注冊中心Nacos、分布式限流與熔斷Sentinel、分布式消息通信RocketMQ、分布式事務Seata及微服務網關Spring Cloud Gateway。由于Spring Cloud中所有的技術組件都是基于Spring Boot微服務框架來集成的,所以對于Spring Boot的核心原理也做了比較詳細的分析。

本書中涉及的所有技術組件,筆者都采用“場景→需求→解決方案→應用→原理”高效技術學習模型進行設計,以便讓讀者知其然且知其所以然。在“原理”部分,筆者采用大量的源碼及圖形的方式來進行分析,幫助讀者達到對技術組件深度學習和理解的目標。

資料目錄:

第1章 微服務的發展史... 1

1.1 從單體架構到分布式架構的演進... 2

1.1.1 單體架構... 2

1.1.2 集群及垂直化... 3

1.1.3 SOA.. 4

1.1.4 微服務架構... 5

1.2 微服務架構帶來的挑戰... 7

1.2.1 微服務架構的優點... 7

1.2.2 微服務架構面臨的挑戰... 7

1.3 如何實現微服務架構... 8

1.3.1 微服務架構圖... 8

1.3.2 微服務架構下的技術挑戰... 9

第2章 微服務解決方案之Spring Cloud.. 10

2.1 什么是Spring Cloud. 11

2.2 Spring Cloud版本簡介... 12

2.3 Spring Cloud規范下的實現... 13

2.4 Spring Cloud Netflix. 14

2.5 Spring Cloud Alibaba. 15

2.5.1 Spring Cloud Alibaba的優勢... 15

2.5.2 Spring Cloud Alibaba的版本... 16

第3章 Spring Cloud的核心之Spring Boot. 18

3.1 重新認識Spring Boot. 18

3.1.1 Spring IoC/DI 19

3.1.2 Bean裝配方式的升級... 21

3.1.3 Spring Boot的價值... 23

3.2 快速構建Spring Boot應用... 25

3.3 Spring Boot自動裝配的原理... 26

3.3.1 自動裝配的實現... 27

3.3.2 EnableAutoConfiguration. 28

3.3.3 AutoConfigurationImportSelector 29

3.3.4 自動裝配原理分析... 31

3.3.5 @Conditional條件裝配... 34

3.3.6 spring-autoconfigure-metadata. 37

3.4 手寫實現一個Starter. 38

3.4.1 Starter的命名規范... 38

3.4.2 實現基于Redis的Starter 38

3.5 本章小結... 41

第4章 微服務架構下的服務治理... 42

4.1 如何理解Apache Dubbo. 43

4.2 Apache Dubbo實現遠程通信... 44

4.3 Spring Boot集成Apache Dubbo. 48

4.4 快速上手ZooKeeper. 52

4.4.1 ZooKeeper的安裝... 52

4.4.2 ZooKeeper的數據結構... 52

4.4.3 ZooKeeper的特性... 53

4.4.4 Watcher機制... 54

4.4.5 常見應用場景分析... 54

4.5 Apache Dubbo集成ZooKeeper實現服務注冊... 56

4.5.1 Apache Dubbo集成ZooKeeper實現服務注冊的步驟... 57

4.5.2 ZooKeeper注冊中心的實現原理... 59

4.6 實戰Dubbo Spring Cloud. 60

4.6.1 實現Dubbo服務提供方... 60

4.6.2 實現Dubbo服務調用方... 63

4.7 Apache Dubbo的高級應用... 65

4.7.1 集群容錯... 66

4.7.2 負載均衡... 67

4.7.3 服務降級... 68

4.7.4 主機綁定規則... 69

4.8 Apache Dubbo核心源碼分析... 70

4.8.1 源碼構建... 71

4.8.2 Dubbo的核心之SPI 71

4.8.3 無處不在的自適應擴展點... 81

4.8.4 Dubbo中的IoC和AOP. 85

4.8.5 Dubbo和Spring完美集成的原理... 89

4.9 本章小結... 95

第5章 服務注冊與發現... 97

5.1 什么是Alibaba Nacos. 98

5.2 Nacos的基本使用... 99

5.2.1 Nacos的安裝... 99

5.2.2 Nacos服務注冊發現相關API說明... 100

5.2.3 Nacos集成Spring Boot實現服務注冊與發現... 101

5.3 Nacos的高可用部署... 103

5.3.1 安裝環境要求... 104

5.3.2 安裝包及環境準備... 104

5.3.3 集群配置... 104

5.3.4 配置MySQL數據庫... 105

5.3.5 啟動Nacos服務... 105

5.4 Dubbo使用Nacos實現注冊中心... 106

5.5 Spring Cloud Alibaba Nacos Discovery. 109

5.5.1 服務端開發... 109

5.5.2 消費端開發... 113

5.6 Nacos實現原理分析... 115

5.6.1 Nacos架構圖... 116

5.6.2 注冊中心的原理... 116

5.7 深入解讀Nacos源碼... 117

5.7.1 Spring Cloud什么時候完成服務注冊... 117

5.7.2 NacosServiceRegistry的實現... 122

5.7.3 從源碼層面分析Nacos服務注冊的原理... 123

5.7.4 揭秘服務提供者地址查詢... 127

5.7.5 分析Nacos服務地址動態感知原理... 130

5.8 本章小結... 132

第6章 Nacos實現統一配置管理... 133

6.1 Nacos配置中心簡介... 134

6.2 Nacos集成Spring Boot實現統一配置管理... 134

6.2.1 項目準備... 134

6.2.2 啟動Nacos Server 135

6.2.3 創建配置... 135

6.2.4 啟動服務并測試... 137

6.3 Spring Cloud Alibaba Nacos Config. 137

6.3.1 Nacos Config的基本應用... 137

6.3.2 動態更新配置... 139

6.3.3 基于Data ID配置YAML的文件擴展名... 140

6.3.4 不同環境的配置切換... 141

6.3.5 Nacos Config自定義Namespace和Group. 142

6.4 Nacos Config 實現原理解析... 145

6.4.1 配置的CRUD.. 145

6.4.2 動態監聽之Pull Or Push. 146

6.5 Spring Cloud如何實現配置的加載... 148

6.5.1 PropertySourceBootstrapConfiguration. 148

6.5.2 PropertySourceLocator 150

6.6 Nacos Config核心源碼解析... 152

6.6.1 NacosFactory.createConfigService. 154

6.6.2 NacosConfigService構造... 155

6.6.3 ClientWorker 155

6.6.4 ClientWorker.checkConfigInfo. 157

6.6.5 LongPollingRunnable.run. 157

6.6.6 服務端長輪詢處理機制... 161

6.6.7 ClientLongPolling. 164

6.7 本章小結... 167

第7章 基于Sentinel的微服務限流及熔斷... 168

7.1 服務限流的作用及實現... 168

7.1.1 計數器算法... 169

7.1.2 滑動窗口算法... 170

7.1.3 令牌桶限流算法... 171

7.1.4 漏桶限流算法... 172

7.2 服務熔斷與降級... 172

7.3 分布式限流框架Sentinel. 174

7.3.1 Sentinel的特性... 174

7.3.2 Sentinel的組成... 175

7.3.3 Sentinel Dashboard的部署... 175

7.4 Sentinel的基本應用... 176

7.4.1 Sentinel實現限流... 176

7.4.2 資源的定義方式... 178

7.4.3 Sentinel資源保護規則... 179

7.4.4 Sentinel實現服務熔斷... 183

7.5 Spring Cloud集成Sentinel實踐... 185

7.5.1 Sentinel接入Spring Cloud. 185

7.5.2 基于Sentinel Dashboard來實現流控配置... 187

7.5.3 自定義URL限流異常... 189

7.5.4 URL資源清洗... 189

7.6 Sentinel集成Nacos實現動態流控規則... 190

7.7 Sentinel Dashboard集成Nacos實現規則同步... 194

7.7.1 Sentinel Dashboard源碼修改... 194

7.7.2 Sentinel Dashboard規則數據同步... 199

7.8 Dubbo集成Sentinel實現限流... 200

7.8.1 Dubbo服務接入Sentinel Dashboard. 200

7.8.2 Dubbo服務限流規則配置... 201

7.9 Sentinel熱點限流... 203

7.9.1 熱點參數限流的使用... 204

7.9.2 @SentinelResource熱點參數限流... 205

7.9.3 熱點參數規則說明... 206

7.10 Sentinel的工作原理... 206

7.11 Spring Cloud Sentinel工作原理分析... 207

7.12 Sentinel核心源碼分析... 210

7.12.1 限流的源碼實現... 210

7.12.2 實時指標數據統計... 216

7.12.3 服務降級的實現原理... 225

7.13 本章小結... 229

第8章 分布式事務... 230

8.1 分布式事務問題的理論模型... 231

8.1.1 X/Open分布式事務模型... 231

8.1.2 兩階段提交協議... 233

8.1.3 三階段提交協議... 234

8.1.4 CAP定理和BASE理論... 236

8.2 分布式事務問題的常見解決方案... 238

8.2.1 TCC補償型方案... 238

8.2.2 基于可靠性消息的最終一致性方案... 239

8.2.3 最大努力通知型... 242

8.3 分布式事務框架Seata. 243

8.3.1 AT模式... 243

8.3.2 Saga模式... 244

8.4 Seata的安裝... 248

8.4.1 file存儲模式... 248

8.4.2 db存儲模式... 249

8.4.3 Seata服務端配置中心說明... 251

8.5 AT模式Dubbo集成Seata. 258

8.5.1 項目準備... 259

8.5.2 數據庫準備... 259

8.5.3 核心方法說明... 260

8.5.4 項目啟動順序及訪問... 264

8.5.5 整合Seata實現分布式事務... 265

8.6 Spring Cloud Alibaba Seata. 269

8.6.1 Spring Cloud項目準備... 270

8.6.2 集成Spring Cloud Alibaba Seata. 270

8.6.3 關于事務分組的說明... 275

8.7 Seata AT模式的實現原理... 276

8.7.1 AT模式第一階段的實現原理... 277

8.7.2 AT模式第二階段的原理分析... 279

8.7.3 關于事務的隔離性保證... 280

8.8 本章小結... 283

第9章 RocketMQ分布式消息通信... 285

9.1 什么是RocketMQ.. 285

9.1.1 RocketMQ的應用場景... 286

9.1.2 RocketMQ的安裝... 286

9.1.3 RocketMQ如何發送消息... 287

9.1.4 RocketMQ如何消費消息... 289

9.2 Spring Cloud Alibaba RocketMQ.. 291

9.2.1 Spring Cloud Alibaba RocketMQ架構圖... 293

9.2.2 Spring Cloud Stream消息發送流程... 294

9.2.3 RocketMQ Binder集成消息發送... 299

9.2.4 RocketMQ Binder集成消息訂閱... 303

9.2.5 Spring Cloud Stream消息訂閱流程... 308

9.3 RocketMQ集群管理... 314

9.3.1 整體架構設計... 314

9.3.2 基本概念... 315

9.3.3 為什么放棄ZooKeeper而選擇NameServer 316

9.4 如何實現順序消息... 318

9.4.1 順序消息的使用場景... 318

9.4.2 如何發送和消費順序消息... 319

9.4.3 順序發送的技術原理... 321

9.4.4 普通發送的技術原理... 322

9.4.5 順序消費的技術原理... 324

9.4.6 并發消費的技術原理... 325

9.4.7 消息的冪等性... 325

9.5 如何實現事務消息... 326

9.5.1 事務消息的使用場景... 326

9.5.2 如何發送事務消息... 327

9.5.3 事務消息的技術原理... 330

9.6 高性能設計... 331

9.6.1 順序寫盤... 333

9.6.2 消費隊列設計... 334

9.6.3 消息跳躍讀取... 336

9.6.4 數據零拷貝... 336

9.6.5 動態伸縮能力... 336

9.6.6 消息實時投遞... 337

9.7 高可用設計... 338

9.7.1 消息發送重試機制... 339

9.7.2 故障規避機制... 340

9.7.3 同步刷盤與異步刷盤... 343

9.7.4 主從復制... 350

9.7.5 讀寫分離... 351

9.7.6 消費重試機制... 351

9.7.7 ACK機制... 352

9.7.8 Broker集群部署... 352

9.8 本章小結... 353

第10章 微服務網關之Spring Cloud Gateway. 354

10.1 API網關的作用... 355

10.1.1 統一認證鑒權... 356

10.1.2 灰度發布... 357

10.2 網關的本質及技術選型... 358

10.2.1 OpenResty. 358

10.2.2 Spring Cloud Zuul 360

10.2.3 Spring Cloud Gateway. 361

10.3 Spring Cloud Gateway網關實戰... 361

10.3.1 spring-cloud-gateway-service. 361

10.3.2 spring-cloud-gateway-sample. 362

10.4 Spring Cloud Gateway原理分析... 363

10.5 Route Predicate Factories. 364

10.5.1 指定時間規則匹配路由... 365

10.5.2 Cookie匹配路由... 365

10.5.3 Header匹配路由... 366

10.5.4 Host匹配路由... 366

10.5.5 請求方法匹配路由... 367

10.5.6 請求路徑匹配路由... 367

10.6 Gateway Filter Factories. 367

10.6.1 GatewayFilter 368

10.6.2 GlobalFilter 372

10.7 自定義過濾器... 375

10.7.1 自定義GatewayFilter 375

10.7.2 自定義GlobalFilter 377

10.8 Spring Cloud Gateway集成Nacos實現請求負載... 378

10.9 Spring Cloud Gateway集成Sentinel網關限流... 381

10.9.1 Route維度限流... 382

10.9.2 自定義API分組限流... 384

10.9.3 自定義異常... 386

10.9.4 網關流控控制臺... 387

10.9.5 網關限流原理... 388

 

 

------分隔線----------------------------
鋒哥公眾號


鋒哥微信號


關注公眾號
【Java資料站】
回復 666
獲取 
66套java
從菜雞到大神
項目實戰課程
日本色在线