深入理解 ApacheDubbo 與實戰

詣極,林琳

  • 出版商: 電子工業
  • 出版日期: 2019-07-01
  • 定價: $474
  • 售價: 8.5$403
  • 語言: 簡體中文
  • ISBN: 7121366347
  • ISBN-13: 9787121366345
  • 相關分類: Message Queue
  • 立即出貨 (庫存=1)

買這商品的人也買了...

商品描述

本書首先介紹Dubbo的簡史、後續的規劃和整體架構大圖;接著介紹Dubbo環境配置,並基於Dubbo開發第一款應用程序;然後介紹Dubbo內置的常用註冊中心的實現原理,Dubbo擴展點加載的原理和實現,Dubbo的啟動、服務暴露、服務消費和優雅停機的機制,Dubbo中RPC協議細節、編解碼和服務調用實現原理,Dubbo集群容錯、路由和負載均衡機制,Dubbo的擴展點相關知識,Dubbo高級特性的實現和原理,Dubbo常用的Filter的實現原理,Dubbo中新增etcd3註冊中心的實戰內容和Dubbo服務治理平臺的相關知識;最後介紹Dubbo未來生態和Dubbo Mesh的相關知識。

作者簡介

商宗海,花名詣極,Apache Dubbo PMC。曾就職於阿里巴巴、有贊,擔任Dubbo框架技術負責人,長期活躍在Dubbo社區。現就職於螞蟻金服中間件團隊,負責sofa-rpc和雲原生方向的產品研發。林琳,花名景竹,曾就職於華軟集團、遞四方等公司,擔任技術經理、不錯架構師等職位。現就職於螞蟻金服支付寶事業群,負責工程平台架構工作。

目錄大綱

第1章Dubbo——高性能RPC通信框架 1

11 應用架構演進過程 1

111 單體應用 1

112 分佈式應用 3

12 Dubbo簡介 6

121 Dubbo的發展歷史 7

122 Dubbo是什麼 7

123 Dubbo解決什麼問題 9

124 誰在使用Dubbo 10

125 Dubbo後續的規劃11

13 Dubbo總體大圖 11

131 Dubbo總體分層 11

132 Dubbo核心組件 12

133 Dubbo總體調用過程13

14 小結 15

第2章開發一款Dubbo應用程序 16

21 配置開發環境 16

211 下載並安裝JDK 17

212 下載並安裝IDE 17

213 下載並配置Maven 18

214 下載並配置ZooKeeper 18

215 使用IDEA調試Dubbo源碼 18

22 基於XML配置實現 21

221 編寫Echo服務器 21

222 編寫Echo客戶端 24

23 基於註解實現 26

231 基於註解編寫Echo服務器 26

232 基於註解編寫Echo客戶端 28

24 基於API實現 30

241 基於API編寫Echo服務器 30

242 基於API編寫Echo客戶端 31

25 構建並運行 32

26 小結 34

第3章Dubbo註冊中心 35

31 註冊中心概述 35

311 工作流程 36

312 數據結構 37

313 ZooKeeper原理概述 37

314 Redis原理概述 39

32 訂閱/發布 40

321 ZooKeeper的實現 40

322 Redis的實現 44

33 緩存機制 48

331 緩存的加載 49

332 緩存的保存與更新 50

34 重試機制 50

35 設計模式 51

351 模板模式 51

352 工廠模式 52

36 小結 54

第4章Dubbo擴展點加載機制 55

41 加載機制概述 55

411 Java SPI 56

412 擴展點加載機制的改進 57

413 擴展點的配置規範 59

414 擴展點的分類與緩存 60

415 擴展點的特性 61

42 擴展點註解 62

421 擴展點註解:@SPI 62

422 擴展點自適應註解:@Adaptive 63

423 擴展點自動激活註解:@Activate 65

43 ExtensionLoader的工作原理 66

431 工作流程 66

432 getExtension的實現原理 67

433 getAdaptiveExtension的實現原理 70

434 getActivateExtension的實現原理 73

435 ExtensionFactory的實現原理 73

44 擴展點動態編譯的實現 76

441 總體結構 77

442 Javassist動態代碼編譯 78

443 JDK動態代碼編譯 79

45 小結 80

第5章Dubbo啟停原理解析 81

51 配置解析 81

511 基於schema設計解析 82

512 基於XML配置原理解析 85

513 基於註解配置原理解析 91

52 服務暴露的實現原理97

521 配置承載初始化 97

522 遠程服務的暴露機制 97

523 本地服務的暴露機制 105

53 服務消費的實現原理106

531 單註冊中心消費原理 106

532 多註冊中心消費原理 113

533 直連服務消費原理 114

54 優雅停機原理解析115

55 小結 116

第6章Dubbo遠程調用 117

61 Dubbo調用介紹 117

62 Dubbo協議詳解 119

63 編解碼器原理 122

631 Dubbo協議編碼器123

632 Dubbo協議解碼器128

64 Telnet調用原理136

641 Telnet指令解析原理 136

642 Telnet實現健康監測 140

65 ChannelHandler 141

651 核心Handler和線程模型 141

652 Dubbo請求響應Handler 145

653 Dubbo心跳Handler 148

66 小結 150

第7章Dubbo集群容錯 151

71 Cluster層概述 151

72 容錯機制的實現 153

721 容錯機制概述 153

722 Cluster接口關係 155

723 Failover策略 157

724 Failfast策略 158

725 Failsafe策略 158

726 Failback策略159

727 Available策略 160

728 Broadcast策略 160

729 Forking策略 161

73 Directory的實現 162

731 總體實現 162

732 RegistryDirectory的實現 163

74 路由的實現 166

741 路由的總體結構 166

742 條件路由的參數規則 167

743 條件路由的實現 168

744 文件路由的實現 169

745 腳本路由的實現 170

75 負載均衡的實現 171

751 包裝後的負載均衡 171

752 負載均衡的總體結構 173

753 Random負載均衡 175

754 RoundRobin負載均衡 176

755 LeastActive負載均衡 178

756 一致性Hash負載均衡 179

76 Merger的實現 181

761 總體結構 181

762 MergeableClusterInvoker機制183

77 Mock 185

771 Mock常見的使用方式 185

772 Mock的總體結構 186

773 Mock的實現原理 187

78 小結 189

第8章Dubbo擴展點 190

81 Dubbo核心擴展點概述 190

811 擴展點的背景 191

812 擴展點整體架構 191

82 RPC層擴展點 192

821 Proxy層擴展點 192

822 Registry層擴展點 194

823 Cluster層擴展點 195

83 Remote層擴展點 198

831 Protocol層擴展點 199

832 Exchange層擴展點 202

833 Transport層擴展點 203

834 Serialize層擴展點 206

84 其他擴展點 207

第9章Dubbo高級特性 210

91 Dubbo高級特性概述 210

92 服務分組和版本 211

93 參數回調 214

94 隱式參數 217

95 異步調用 218

96 泛化調用 219

97 上下文信息 220

98 Telnet操作 221

99 Mock調用 224

910 結果緩存 226

911 小結 226

第10章Dubbo過濾器 227

101 Dubbo過濾器概述 227

1011 過濾器的使用 228

1012 過濾器的總體結構 228

102 過濾器鏈初始化的實現原理 231

103 服務提供者過濾器的實現原理 233

1031 AccessLogFilter的實現原理 233

1032 ExecuteLimitFilter的實現原理 234

1033 ClassLoaderFilter的實現原理 235

1034 ContextFilter的實現原理 237