TOP
0
0
【簡體曬書區】 單本79折,5本7折,活動好評延長至5/31,趕緊把握這一波!
深入理解Apache Dubbo與實戰(簡體書)
滿額折

深入理解Apache Dubbo與實戰(簡體書)

人民幣定價:79 元
定  價:NT$ 474 元
優惠價:87412
領券後再享88折
海外經銷商無庫存,到貨日平均30天至45天
可得紅利積點:12 點
相關商品
商品簡介
作者簡介
目次

商品簡介

本書首先介紹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
1.1 應用架構演進過程 1
1.1.1 單體應用 1
1.1.2 分布式應用 3
1.2 Dubbo簡介 6
1.2.1 Dubbo的發展歷史 7
1.2.2 Dubbo是什麼 7
1.2.3 Dubbo解決什麼問題 9
1.2.4 誰在使用Dubbo 10
1.2.5 Dubbo後續的規劃 11
1.3 Dubbo總體大圖 11
1.3.1 Dubbo總體分層 11
1.3.2 Dubbo核心組件 12
1.3.3 Dubbo總體調用過程 13
1.4 小結 15
第2章 開發第一款Dubbo應用程序 16
2.1 配置開發環境 16
2.1.1 下載並安裝JDK 17
2.1.2 下載並安裝IDE 17
2.1.3 下載並配置Maven 18
2.1.4 下載並配置ZooKeeper 18
2.1.5 使用IDEA調試Dubbo源碼 18
2.2 基於XML配置實現 21
2.2.1 編寫Echo服務器 21
2.2.2 編寫Echo客戶端 24
2.3 基於注解實現 26
2.3.1 基於注解編寫Echo服務器 26
2.3.2 基於注解編寫Echo客戶端 28
2.4 基於API實現 30
2.4.1 基於API編寫Echo服務器 30
2.4.2 基於API編寫Echo客戶端 31
2.5 構建並運行 32
2.6 小結 34
第3章 Dubbo註冊中心 35
3.1 註冊中心概述 35
3.1.1 工作流程 36
3.1.2 數據結構 37
3.1.3 ZooKeeper原理概述 37
3.1.4 Redis原理概述 39
3.2 訂閱/發佈 40
3.2.1 ZooKeeper的實現 40
3.2.2 Redis的實現 44
3.3 緩存機制 48
3.3.1 緩存的加載 49
3.3.2 緩存的保存與更新 50
3.4 重試機制 50
3.5 設計模式 51
3.5.1 模板模式 51
3.5.2 工廠模式 52
3.6 小結 54
第4章 Dubbo擴展點加載機制 55
4.1 加載機制概述 55
4.1.1 Java SPI 56
4.1.2 擴展點加載機制的改進 57
4.1.3 擴展點的配置規範 59
4.1.4 擴展點的分類與緩存 60
4.1.5 擴展點的特性 61
4.2 擴展點注解 62
4.2.1 擴展點注解:@SPI 62
4.2.2 擴展點自適應注解:@Adaptive 63
4.2.3 擴展點自動激活注解:@Activate 65
4.3 ExtensionLoader的工作原理 66
4.3.1 工作流程 66
4.3.2 getExtension的實現原理 67
4.3.3 getAdaptiveExtension的實現原理 70
4.3.4 getActivateExtension的實現原理 73
4.3.5 ExtensionFactory的實現原理 73
4.4 擴展點動態編譯的實現 76
4.4.1 總體結構 77
4.4.2 Javassist動態代碼編譯 78
4.4.3 JDK動態代碼編譯 79
4.5 小結 80
第5章 Dubbo啟停原理解析 81
5.1 配置解析 81
5.1.1 基於schema設計解析 82
5.1.2 基於XML配置原理解析 85
5.1.3 基於注解配置原理解析 91
5.2 服務暴露的實現原理 97
5.2.1 配置承載初始化 97
5.2.2 遠程服務的暴露機制 97
5.2.3 本地服務的暴露機制 105
5.3 服務消費的實現原理 106
5.3.1 單註冊中心消費原理 106
5.3.2 多註冊中心消費原理 113
5.3.3 直連服務消費原理 114
5.4 優雅停機原理解析 115
5.5 小結 116
第6章 Dubbo遠程調用 117
6.1 Dubbo調用介紹 117
6.2 Dubbo協議詳解 119
6.3 編解碼器原理 122
6.3.1 Dubbo協議編碼器 123
6.3.2 Dubbo協議解碼器 128
6.4 Telnet調用原理 136
6.4.1 Telnet指令解析原理 136
6.4.2 Telnet實現健康監測 140
6.5 ChannelHandler 141
6.5.1 核心Handler和線程模型 141
6.5.2 Dubbo請求響應Handler 145
6.5.3 Dubbo心跳Handler 148
6.6 小結 150
第7章 Dubbo集群容錯 151
7.1 Cluster層概述 151
7.2 容錯機制的實現 153
7.2.1 容錯機制概述 153
7.2.2 Cluster接口關係 155
7.2.3 Failover策略 157
7.2.4 Failfast策略 158
7.2.5 Failsafe策略 158
7.2.6 Failback策略 159
7.2.7 Available策略 160
7.2.8 Broadcast策略 160
7.2.9 Forking策略 161
7.3 Directory的實現 162
7.3.1 總體實現 162
7.3.2 RegistryDirectory的實現 163
7.4 路由的實現 166
7.4.1 路由的總體結構 166
7.4.2 條件路由的參數規則 167
7.4.3 條件路由的實現 168
7.4.4 文件路由的實現 169
7.4.5 腳本路由的實現 170
7.5 負載均衡的實現 171
7.5.1 包裝後的負載均衡 171
7.5.2 負載均衡的總體結構 173
7.5.3 Random負載均衡 175
7.5.4 RoundRobin負載均衡 176
7.5.5 LeastActive負載均衡 178
7.5.6 一致性Hash負載均衡 179
7.6 Merger的實現 181
7.6.1 總體結構 181
7.6.2 MergeableClusterInvoker機制 183
7.7 Mock 185
7.7.1 Mock常見的使用方式 185
7.7.2 Mock的總體結構 186
7.7.3 Mock的實現原理 187
7.8 小結 189
第8章 Dubbo擴展點 190
8.1 Dubbo核心擴展點概述 190
8.1.1 擴展點的背景 191
8.1.2 擴展點整體架構 191
8.2 RPC層擴展點 192
8.2.1 Proxy層擴展點 192
8.2.2 Registry層擴展點 194
8.2.3 Cluster層擴展點 195
8.3 Remote層擴展點 198
8.3.1 Protocol層擴展點 199
8.3.2 Exchange層擴展點 202
8.3.3 Transport層擴展點 203
8.3.4 Serialize層擴展點 206
8.4 其他擴展點 207
第9章 Dubbo高級特性 210
9.1 Dubbo高級特性概述 210
9.2 服務分組和版本 211
9.3 參數回調 214
9.4 隱式參數 217
9.5 異步調用 218
9.6 泛化調用 219
9.7 上下文信息 220
9.8 Telnet操作 221
9.9 Mock調用 224
9.10 結果緩存 226
9.11 小結 226
第10章 Dubbo過濾器 227
10.1 Dubbo過濾器概述 227
10.1.1 過濾器的使用 228
10.1.2 過濾器的總體結構 228
10.2 過濾器鏈初始化的實現原理 231
10.3 服務提供者過濾器的實現原理 233
10.3.1 AccessLogFilter的實現原理 233
10.3.2 ExecuteLimitFilter的實現原理 234
10.3.3 ClassLoaderFilter的實現原理 235
10.3.4 ContextFilter的實現原理 237
10.3.5 ExceptionFilter的實現原理 237
10.3.6 TimeoutFilter的實現原理 238
10.3.7 TokenFilter的實現原理 238
10.3.8 TpsLimitFilter的實現原理 239
10.4 消費者過濾器的實現原理 240
10.4.1 ActiveLimitFilter的實現原理 240
10.4.2 ConsumerContextFilter的實現原理 242
10.4.3 DeprecatedFilter的實現原理 242
10.4.4 FutureFilter的實現原理 243
10.5 小結 243
第11章 Dubbo註冊中心擴展實踐 245
11.1 etcd背景介紹 245
11.2 etcd數據結構設計 246
11.3 構建可運行的註冊中心 248
11.3.1 擴展Transporter實現 248
11.3.2 擴展RegistryFactory實現 249
11.3.3 新增JEtcdClient實現 250
11.3.4 擴展FailbackRegistry實現 260
11.3.5 編寫單元測試 263
11.4 搭建etcd集群並在Dubbo中運行 263
11.4.1 單機啟動etcd 264
11.4.2 集群啟動etcd 265
11.5 小結 266
第12章 Dubbo服務治理平臺 267
12.1 服務治理平臺總體結構 267
12.2 服務治理平臺的實現原理 269
12.3 小結 273
第13章 Dubbo未來展望 274
13.1 Dubbo未來生態 274
13.1.1 開源現狀 274
13.1.2 後續發展 275
13.2 雲原生 281
13.2.1 面臨的挑戰 281
13.2.2 Service Mesh簡介 283
13.2.3 Dubbo Mesh 284
13.3 小結 285

您曾經瀏覽過的商品

購物須知

大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。

特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。

為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。

若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

優惠價:87 412
海外經銷商無庫存,到貨日平均30天至45天

暢銷榜

客服中心

收藏

會員專區