注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機(jī)/網(wǎng)絡(luò)數(shù)據(jù)庫Apache ShardingSphere實(shí)戰(zhàn)

Apache ShardingSphere實(shí)戰(zhàn)

Apache ShardingSphere實(shí)戰(zhàn)

定 價:¥89.00

作 者: 鄭天民 著
出版社: 電子工業(yè)出版社
叢編項:
標(biāo) 簽: 暫缺

ISBN: 9787121356544 出版時間: 2021-09-01 包裝: 平裝
開本: 16開 頁數(shù): 268 字?jǐn)?shù):  

內(nèi)容簡介

  本書分為9章,主要介紹應(yīng)用ShardingSphere實(shí)現(xiàn)分庫分表的一些方法論和工程實(shí)踐。通過對ShardingSphere的基本概念、應(yīng)用方式和整體架構(gòu)的介紹,幫助讀者掌握ShardingSphere的設(shè)計思想和解決方案;然后從Sharding-JDBC和Sharding-Proxy兩款核心組件出發(fā),對分庫分表、讀寫分離、分布式事務(wù)、數(shù)據(jù)脫敏、編排治理及代理服務(wù)器等核心功能進(jìn)行詳細(xì)闡述,并結(jié)合具體場景給出實(shí)例分析和實(shí)現(xiàn)過程。 本書面向Java服務(wù)器端開發(fā)人員,讀者不需要有很深的技術(shù)水平,也不需要詳細(xì)了解分庫分表相關(guān)工具,但如果讀者熟悉Java EE常見技術(shù)并掌握一定數(shù)據(jù)訪問基本概念,則有助于讀者更好地理解書中的內(nèi)容。通過學(xué)習(xí)本書內(nèi)容,讀者將對ShardingSphere的基本架構(gòu)、設(shè)計思想和應(yīng)用方式有更加深入的了解,為后續(xù)的工作和學(xué)習(xí)奠定基礎(chǔ)。同時,本書可以作為具備不同技術(shù)體系的開發(fā)人員的參考用書。希望本書能給讀者的日常研發(fā)和管理工作帶來啟發(fā)和幫助。

作者簡介

  鄭天民:??日本足利工業(yè)大學(xué)信息工程學(xué)碩士,研究方向為人工智能在大規(guī)模調(diào)度系統(tǒng)中的應(yīng)用,在國際三大科技文獻(xiàn)檢索系統(tǒng)上發(fā)表過多篇論文。??具有十余年軟件行業(yè)從業(yè)經(jīng)驗,曾就職于多家大型上市公司及互聯(lián)網(wǎng)電商、健康類獨(dú)角獸公司,先后擔(dān)任系統(tǒng)分析架構(gòu)師、技術(shù)總監(jiān)和CTO等職務(wù)。??講授過十余門面向研發(fā)人員的技術(shù)和管理類培訓(xùn)課程,對架構(gòu)設(shè)計和技術(shù)管理有豐富的經(jīng)驗和深入的理解。??阿里云MVP(Most Valuable Professional,最有價值專家)、騰訊云TVP(Tencent Cloud Valuable Professional,**價值專家)、TGO(Top Geeks‘ Organization,鯤鵬會)會員。??著有《系統(tǒng)架構(gòu)設(shè)計:程序員向架構(gòu)師轉(zhuǎn)型之路》《向技術(shù)管理者轉(zhuǎn)型:軟件開發(fā)人員跨行業(yè)、技術(shù)、管理的轉(zhuǎn)型思維與實(shí)踐》《微服務(wù)設(shè)計原理與架構(gòu)》《微服務(wù)架構(gòu)實(shí)戰(zhàn)》《Spring響應(yīng)式微服務(wù)》等書;譯有《Spring響應(yīng)式編程》和《Python深度學(xué)習(xí)入門:從零構(gòu)建CNN和RNN》等書。

圖書目錄

第 1 章 直面數(shù)據(jù)分庫分表架構(gòu) ................................................................................................. 1
1.1 分庫分表簡介 ............................................................................................................ 1
1.1.1 分庫分表的基本概念 ....................................................................................... 2
1.1.2 分庫分表解決方案和代表性框架 ...................................................................... 7
1.2 實(shí)現(xiàn)分庫分表 .......................................................................................................... 10
1.2.1 數(shù)據(jù)分片 ...................................................................................................... 10
1.2.2 讀寫分離 ...................................................................................................... 11
1.2.3 分布式事務(wù) .................................................................................................. 12
1.3 初識 ShardingSphere ................................................................................................. 12
1.3.1 ShardingSphere 設(shè)計理念和核心組件 .............................................................. 14
1.3.2 ShardingSphere 解決方案 ............................................................................... 18
1.4 本書架構(gòu) ................................................................................................................. 21
1.5 本章小結(jié) ................................................................................................................. 22
第 2 章 引入 ShardingSphere ................................................................................................. 23
2.1 ShardingSphere 的使用方式 ....................................................................................... 23
2.1.1 數(shù)據(jù)庫和 JDBC 驅(qū)動集成 .............................................................................. 24
2.1.2 開發(fā)框架集成 ............................................................................................... 25
2.1.3 ORM 框架集成 ............................................................................................. 32
2.2 ShardingSphere 的配置機(jī)制 ....................................................................................... 34
2.2.1 行表達(dá)式 ...................................................................................................... 34
2.2.2 ShardingSphere 的核心配置 ............................................................................ 35
2.2.3 ShardingSphere 的配置方式 ............................................................................ 38
Apache ShardingSphere 實(shí)戰(zhàn)
VI
2.2.4 ShardingSphere 的配置體系 ............................................................................ 43
2.3 本章小結(jié) ................................................................................................................. 51
第 3 章 ShardingSphere 整體架構(gòu) .......................................................................................... 53
3.1 ShardingSphere 與 JDBC 規(guī)范 .................................................................................... 53
3.1.1 JDBC 規(guī)范的核心組件 .................................................................................. 54
3.1.2 ShardingSphere 與 JDBC 規(guī)范的兼容性 ........................................................... 59
3.2 ShardingSphere 與微內(nèi)核架構(gòu)模式 ............................................................................. 66
3.2.1 微內(nèi)核架構(gòu)模式設(shè)計原理與實(shí)現(xiàn) .................................................................... 66
3.2.2 ShardingSphere 基于微內(nèi)核架構(gòu)模式實(shí)現(xiàn)擴(kuò)展性 ............................................. 71
3.3 ShardingSphere 與 Spring 框架 ................................................................................... 78
3.3.1 基于命名空間集成 Spring 框架 ...................................................................... 78
3.3.2 基于自定義 starter 集成 Spring Boot 的實(shí)現(xiàn)過程 .............................................. 84
3.4 本章小結(jié) ................................................................................................................. 89
第 4 章 ShardingSphere 數(shù)據(jù)分片 .......................................................................................... 90
4.1 數(shù)據(jù)分片的核心概念 ................................................................................................ 90
4.1.1 綁定表與廣播表 ........................................................................................... 91
4.1.2 分片策略與分片算法 ..................................................................................... 92
4.1.3 強(qiáng)制路由與 Hint 機(jī)制 .................................................................................... 97
4.1.4 分布式主鍵 .................................................................................................. 99
4.1.5 連接模式 .................................................................................................... 109
4.1.6 分片引擎 .................................................................................................... 110
4.2 數(shù)據(jù)分片實(shí)例分析 .................................................................................................. 117
4.3 分片改造之實(shí)現(xiàn)分庫 .............................................................................................. 122
4.3.1 初始化數(shù)據(jù)源 ............................................................................................. 122
4.3.2 設(shè)置分庫策略 ............................................................................................. 123
4.3.3 設(shè)置綁定表與廣播表 ................................................................................... 123
4.3.4 設(shè)置表分片規(guī)則 ......................................................................................... 124
4.4 分片改造之實(shí)現(xiàn)分表 .............................................................................................. 126
4.5 分片改造之實(shí)現(xiàn)分庫+分表 ..................................................................................... 129
4.6 分片改造之實(shí)現(xiàn)強(qiáng)制路由 ....................................................................................... 133
4.6.1 HintManager ............................................................................................... 133
4.6.2 實(shí)現(xiàn)并配置強(qiáng)制路由分片算法 ..................................................................... 136
4.6.3 基于強(qiáng)制路由訪問目標(biāo)庫表 ........................................................................ 137
目錄
VII
4.7 本章小結(jié) ............................................................................................................... 140
第 5 章 ShardingSphere 讀寫分離 ........................................................................................ 141
5.1 讀寫分離與 ShardingSphere ..................................................................................... 141
5.1.1 讀寫分離方案 ............................................................................................. 142
5.1.2 配置讀寫分離 ............................................................................................. 142
5.2 讀寫分離的基礎(chǔ)用法 .............................................................................................. 143
5.2.1 讀寫分離的使用方法 ................................................................................... 143
5.2.2 MasterSlaveRouter 實(shí)現(xiàn)原理 ......................................................................... 145
5.3 讀寫分離集成數(shù)據(jù)分片 ........................................................................................... 152
5.3.1 讀寫分離集成數(shù)據(jù)分片的實(shí)現(xiàn)方法 .............................................................. 153
5.3.2 ShardingMasterSlaveRouter 實(shí)現(xiàn)原理 ............................................................ 154
5.4 讀寫分離集成強(qiáng)制路由 ........................................................................................... 156
5.5 本章小結(jié) ............................................................................................................... 157
第 6 章 ShardingSphere 分布式事務(wù) .................................................................................... 159
6.1 分布式事務(wù)的核心概念 ........................................................................................... 159
6.1.1 ShardingSphere 中的分布式事務(wù) ................................................................... 160
6.1.2 XA 強(qiáng)一致性事務(wù)實(shí)現(xiàn)方案 ......................................................................... 162
6.1.3 BASE 柔性事務(wù)實(shí)現(xiàn)方案 ............................................................................ 166
6.2 使用 XA 實(shí)現(xiàn)兩階段提交事務(wù) ................................................................................. 167
6.2.1 開發(fā)環(huán)境準(zhǔn)備 ............................................................................................. 167
6.2.2 實(shí)現(xiàn) XA 事務(wù) ............................................................................................. 169
6.2.3 XA 事務(wù)實(shí)現(xiàn)原理 ....................................................................................... 176
6.3 使用 Seata 實(shí)現(xiàn)最終一致性事務(wù) .............................................................................. 180
6.3.1 開發(fā)環(huán)境準(zhǔn)備 ............................................................................................. 181
6.3.2 實(shí)現(xiàn) BASE 事務(wù) ......................................................................................... 182
6.3.3 BASE 事務(wù)實(shí)現(xiàn)原理 ................................................................................... 182
6.4 本章小結(jié) ............................................................................................................... 188
第 7 章 ShardingSphere 數(shù)據(jù)脫敏 ........................................................................................ 189
7.1 數(shù)據(jù)脫敏的核心概念 .............................................................................................. 189
7.1.1 敏感數(shù)據(jù)存儲方式 ...................................................................................... 190
7.1.2 敏感數(shù)據(jù)加解密過程 ................................................................................... 191
7.1.3 業(yè)務(wù)代碼集成數(shù)據(jù)脫敏 ............................................................................... 191
7.2 數(shù)據(jù)脫敏的使用方法 .............................................................................................. 193
Apache ShardingSphere 實(shí)戰(zhàn)
VIII
7.2.1 準(zhǔn)備數(shù)據(jù)脫敏 ............................................................................................. 193
7.2.2 配置數(shù)據(jù)脫敏 ............................................................................................. 195
7.2.3 執(zhí)行數(shù)據(jù)脫敏 ............................................................................................. 203
7.3 本章小結(jié) ............................................................................................................... 204
第 8 章 ShardingSphere 編排治理 ........................................................................................ 205
8.1 編排治理解決方案 .................................................................................................. 205
8.1.1 配置中心 .................................................................................................... 206
8.1.2 注冊中心 .................................................................................................... 207
8.1.3 鏈路跟蹤 .................................................................................................... 208
8.2 配置中心的使用方法 .............................................................................................. 210
8.2.1 準(zhǔn)備開發(fā)環(huán)境 ............................................................................................. 210
8.2.2 掌握配置項 ................................................................................................ 211
8.2.3 實(shí)現(xiàn)配置中心 ............................................................................................. 213
8.3 注冊中心的使用方法 .............................................................................................. 217
8.3.1 通過注冊中心構(gòu)建編排治理服務(wù) .................................................................. 217
8.3.2 使用注冊中心實(shí)現(xiàn)數(shù)據(jù)訪問熔斷 .................................................................. 226
8.4 鏈路跟蹤的使用方法 .............................................................................................. 230
8.4.1 初始化第三方 Tracer 類 ............................................................................... 230
8.4.2 通過 ShardingTracer 獲取 Tracer 類 ............................................................... 231
8.4.3 基于 Hook 機(jī)制填充 Span ............................................................................ 233
8.5 本章小結(jié) ............................................................................................................... 236
第 9 章 ShardingSphere 代理服務(wù) ........................................................................................ 237
9.1 Sharding-Proxy 的使用方法 ..................................................................................... 237
9.1.1 安裝和配置 ................................................................................................ 238
9.1.2 SQL 語句 ................................................................................................... 242
9.1.3 SCTL 語句 ................................................................................................. 245
9.1.4 代碼集成 .................................................................................................... 246
9.2 Sharding-Proxy 架構(gòu)解析 ......................................................................................... 246
9.2.1 Sharding-Proxy 整體架構(gòu) ............................................................................. 247
9.2.2 Sharding-Proxy 整合 Sharding-JDBC ............................................................. 256
9.3 本章小結(jié) ............................................................................................................... 259

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號