| | | Apache ShardingSphere實戰(博文視點出品) | 該商品所屬分類:圖書 -> 電子工業出版社 | 【市場價】 | 982-1424元 | 【優惠價】 | 614-890元 | 【作者】 | 鄭天民 | 【所屬類別】 | 電子工業出版社 | 【出版社】 | 電子工業出版社 | 【ISBN】 | 9787121356544 | 【折扣說明】 | 一次購物滿999元台幣免運費+贈品 一次購物滿2000元台幣95折+免運費+贈品 一次購物滿3000元台幣92折+免運費+贈品 一次購物滿4000元台幣88折+免運費+贈品
| 【本期贈品】 | ①優質無紡布環保袋,做工棒!②品牌簽字筆 ③品牌手帕紙巾
| |
版本 | 正版全新電子版PDF檔 | 您已选择: | 正版全新 | 溫馨提示:如果有多種選項,請先選擇再點擊加入購物車。*. 電子圖書價格是0.69折,例如了得網價格是100元,電子書pdf的價格則是69元。 *. 購買電子書不支持貨到付款,購買時選擇atm或者超商、PayPal付款。付款後1-24小時內通過郵件傳輸給您。 *. 如果收到的電子書不滿意,可以聯絡我們退款。謝謝。 | | | | 內容介紹 | |
![](/c49/99/13380666.jpg)
出版社:電子工業出版社 ISBN:9787121356544 版次:1 商品編碼:13380666 品牌:電子工業出版社 包裝:平裝 開本:16開 出版時間:2021-09-01 用紙:膠版紙 頁數:268 正文語種:中文 作者:鄭天民
" 編輯推薦 √ 冷啟動:無需語言、數據庫及相關工具的較深經驗,即可掌握這一面向Java服務器端開發人員的強大的數據庫分庫分表工具。 √ 破瓶頸:有了ShardingSphere的幫助,海量數據的存儲和訪問不再是難題,可結合縱向分庫和橫向分表的設計方法來應對。 √ 多功能:面向數據庫分庫分表,提供標準數據分片|分布式事務|數據庫治理功能,適用Java同構|異構語言|雲原生等各場景。 √ 普及廣:用戶有|搜狐|滴滴|B站|電信|民生銀行|58同城|每日優鮮|首汽約車|海爾|科大訊飛|唯品會|好未來|攜程|愛奇藝等。 內容簡介 本書分為9章,主要介紹應用ShardingSphere實現分庫分表的一些方法論和工程實踐。通過對ShardingSphere的基本概念、應用方式和整體架構的介紹,幫助讀者掌握ShardingSphere的設計思想和解決方案;然後從Sharding-JDBC和Sharding-Proxy兩款核心組件出發,對分庫分表、讀寫分離、分布式事務、數據脫敏、編排治理及代理服務器等核心功能進行詳細闡述,並結合具體場景給出實例分析和實現過程。 本書面向Java服務器端開發人員,讀者不需要有很深的技術水平,也不需要詳細了解分庫分表相關工具,但如果讀者熟悉Java EE常見技術並掌握一定數據訪問基本概念,則有助於讀者更好地理解書中的內容。通過學習本書內容,讀者將對ShardingSphere的基本架構、設計思想和應用方式有更加深入的了解,為後續的工作和學習奠定基礎。同時,本書可以作為具備不同技術體繫的開發人員的參考用書。希望本書能給讀者的日常研發和管理工作帶來啟發和幫助。 作者簡介 鄭天民:?日本足利工業大學信息工程學碩士,研究方向為人工智能在大規模調度繫統中的應用,在國際三大科技文獻檢索繫統上發表過多篇論文。?具有十餘年軟件行業從業經驗,曾就職於多家大型上市公司及互聯網電商、健康類獨角獸公司,先後擔任繫統分析架構師、技術總監和CTO等職務。?講授過十餘門面向研發人員的技術和管理類培訓課程,對架構設計和技術管理有豐富的經驗和深入的理解。?阿裡雲MVP(Most Valuable Professional,最有價值專家)、騰訊雲TVP(Tencent Cloud Valuable Professional,**價值專家)、TGO(Top Geeks‘ Organization,鯤鵬會)會員。?著有《繫統架構設計:程序員向架構師轉型之路》《向技術管理者轉型:軟件開發人員跨行業、技術、管理的轉型思維與實踐》《微服務設計原理與架構》《微服務架構實戰》《Spring響應式微服務》等書;譯有《Spring響應式編程》和《Python深度學習入門:從零構建CNN和RNN》等書。 精彩書評 很開心看到Apache ShardingSphere社區的不斷發展,越來越多的課程、文章、視頻在互聯網上的傳播,預示著這個起源於中國本土的Apache軟件基金會項目逐漸從青澀邁向成熟。 先是一家基於Apache ShardingSphere的商業化公司SphereEx成立,後有一部全面講解Apache ShardingSphere實戰技術的圖書問世,它們構成2021年Apache ShardingSphere社區的兩個標志性事件。 Apache ShardingSphere社區的繁榮,與目前國家大力倡導的開源和信創相得益彰,是中國開源邁向輝煌的開端,也是中國工程師從使用開源向反哺開源轉變的真實寫照。希望優秀的本土開源項目如雨後春筍一般層出不窮,一起為中國科技的騰飛添磚加瓦。 至今,Apache ShardingSphere社區已經走過五年的發展歷程,項目的復雜度演變得十分可觀,亟需有本書這樣的參考資料問世,能繫統地向入門者介紹Apache ShardingSphere的適用場景和配置應用。 除基本應用外,ShardingSphere的微內核架構設計優雅、代碼風格清新,非常適合開發者用心研讀閱讀,以提高整體編碼境界。為此,本書從微內核剖析和架構設計角度出發,對ShardingSphere進行抽絲剝繭的解析,讓讀者能更深入地理解其內在機理。 對於這樣一本不可多得的佳作,我謹代表Apache ShardingSphere社區向廣大用戶和開發者力薦。 ——張亮,Apache ShardingSphere PMC Chair, Apache Member, SphereEx CEO 目錄 第 1 章 直面數據分庫分表架構 ................................................................................................. 1 1.1 分庫分表簡介 ............................................................................................................ 1 1.1.1 分庫分表的基本概念 ....................................................................................... 2 1.1.2 分庫分表解決方案和代表性框架 ...................................................................... 7 1.2 實現分庫分表 .......................................................................................................... 10 1.2.1 數據分片 ...................................................................................................... 10 1.2.2 讀寫分離 ...................................................................................................... 11 1.2.3 分布式事務 .................................................................................................. 12 1.3 初識 ShardingSphere ................................................................................................. 12 1.3.1 ShardingSphere 設計理念和核心組件 .............................................................. 14 1.3.2 ShardingSphere 解決方案 ............................................................................... 18 1.4 本書架構 ................................................................................................................. 21 1.5 本章小結 ................................................................................................................. 22 第 2 章 引入 ShardingSphere ................................................................................................. 23 2.1 ShardingSphere 的使用方式 ....................................................................................... 23 2.1.1 數據庫和 JDBC 驅動集成 .............................................................................. 24 2.1.2 開發框架集成 ............................................................................................... 25 2.1.3 ORM 框架集成 ............................................................................................. 32 2.2 ShardingSphere 的配置機制 ....................................................................................... 34 2.2.1 行表達式 ...................................................................................................... 34 2.2.2 ShardingSphere 的核心配置 ............................................................................ 35 2.2.3 ShardingSphere 的配置方式 ............................................................................ 38 Apache ShardingSphere 實戰 VI 2.2.4 ShardingSphere 的配置體繫 ............................................................................ 43 2.3 本章小結 ................................................................................................................. 51 第 3 章 ShardingSphere 整體架構 .......................................................................................... 53 3.1 ShardingSphere 與 JDBC 規範 .................................................................................... 53 3.1.1 JDBC 規範的核心組件 .................................................................................. 54 3.1.2 ShardingSphere 與 JDBC 規範的兼容性 ........................................................... 59 3.2 ShardingSphere 與微內核架構模式 ............................................................................. 66 3.2.1 微內核架構模式設計原理與實現 .................................................................... 66 3.2.2 ShardingSphere 基於微內核架構模式實現擴展性 ............................................. 71 3.3 ShardingSphere 與 Spring 框架 ................................................................................... 78 3.3.1 基於命名空間集成 Spring 框架 ...................................................................... 78 3.3.2 基於自定義 starter 集成 Spring Boot 的實現過程 .............................................. 84 3.4 本章小結 ................................................................................................................. 89 第 4 章 ShardingSphere 數據分片 .......................................................................................... 90 4.1 數據分片的核心概念 ................................................................................................ 90 4.1.1 綁定表與廣播表 ........................................................................................... 91 4.1.2 分片策略與分片算法 ..................................................................................... 92 4.1.3 強制路由與 Hint 機制 .................................................................................... 97 4.1.4 分布式主鍵 .................................................................................................. 99 4.1.5 連接模式 .................................................................................................... 109 4.1.6 分片引擎 .................................................................................................... 110 4.2 數據分片實例分析 .................................................................................................. 117 4.3 分片改造之實現分庫 .............................................................................................. 122 4.3.1 初始化數據源 ............................................................................................. 122 4.3.2 設置分庫策略 ............................................................................................. 123 4.3.3 設置綁定表與廣播表 ................................................................................... 123 4.3.4 設置表分片規則 ......................................................................................... 124 4.4 分片改造之實現分表 .............................................................................................. 126 4.5 分片改造之實現分庫+分表 ..................................................................................... 129 4.6 分片改造之實現強制路由 ....................................................................................... 133 4.6.1 HintManager ............................................................................................... 133 4.6.2 實現並配置強制路由分片算法 ..................................................................... 136 4.6.3 基於強制路由訪問目標庫表 ........................................................................ 137 目錄 VII 4.7 本章小結 ............................................................................................................... 140 第 5 章 ShardingSphere 讀寫分離 ........................................................................................ 141 5.1 讀寫分離與 ShardingSphere ..................................................................................... 141 5.1.1 讀寫分離方案 ............................................................................................. 142 5.1.2 配置讀寫分離 ............................................................................................. 142 5.2 讀寫分離的基礎用法 .............................................................................................. 143 5.2.1 讀寫分離的使用方法 ................................................................................... 143 5.2.2 MasterSlaveRouter 實現原理 ......................................................................... 145 5.3 讀寫分離集成數據分片 ........................................................................................... 152 5.3.1 讀寫分離集成數據分片的實現方法 .............................................................. 153 5.3.2 ShardingMasterSlaveRouter 實現原理 ............................................................ 154 5.4 讀寫分離集成強制路由 ........................................................................................... 156 5.5 本章小結 ............................................................................................................... 157 第 6 章 ShardingSphere 分布式事務 .................................................................................... 159 6.1 分布式事務的核心概念 ........................................................................................... 159 6.1.1 ShardingSphere 中的分布式事務 ................................................................... 160 6.1.2 XA 強一致性事務實現方案 ......................................................................... 162 6.1.3 BASE 柔性事務實現方案 ............................................................................ 166 6.2 使用 XA 實現兩階段提交事務 ................................................................................. 167 6.2.1 開發環境準備 ............................................................................................. 167 6.2.2 實現 XA 事務 ............................................................................................. 169 6.2.3 XA 事務實現原理 ....................................................................................... 176 6.3 使用 Seata 實現最終一致性事務 .............................................................................. 180 6.3.1 開發環境準備 ............................................................................................. 181 6.3.2 實現 BASE 事務 ......................................................................................... 182 6.3.3 BASE 事務實現原理 ................................................................................... 182 6.4 本章小結 ............................................................................................................... 188 第 7 章 ShardingSphere 數據脫敏 ........................................................................................ 189 7.1 數據脫敏的核心概念 .............................................................................................. 189 7.1.1 敏感數據存儲方式 ...................................................................................... 190 7.1.2 敏感數據加解密過程 ................................................................................... 191 7.1.3 業務代碼集成數據脫敏 ............................................................................... 191 7.2 數據脫敏的使用方法 .............................................................................................. 193 Apache ShardingSphere 實戰 VIII 7.2.1 準備數據脫敏 ............................................................................................. 193 7.2.2 配置數據脫敏 ............................................................................................. 195 7.2.3 執行數據脫敏 ............................................................................................. 203 7.3 本章小結 ............................................................................................................... 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 準備開發環境 ............................................................................................. 210 8.2.2 掌握配置項 ................................................................................................ 211 8.2.3 實現配置中心 ............................................................................................. 213 8.3 注冊中心的使用方法 .............................................................................................. 217 8.3.1 通過注冊中心構建編排治理服務 .................................................................. 217 8.3.2 使用注冊中心實現數據訪問熔斷 .................................................................. 226 8.4 鏈路跟蹤的使用方法 .............................................................................................. 230 8.4.1 初始化第三方 Tracer 類 ............................................................................... 230 8.4.2 通過 ShardingTracer 獲取 Tracer 類 ............................................................... 231 8.4.3 基於 Hook 機制填充 Span ............................................................................ 233 8.5 本章小結 ............................................................................................................... 236 第 9 章 ShardingSphere 代理服務 ........................................................................................ 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 架構解析 ......................................................................................... 246 9.2.1 Sharding-Proxy 整體架構 ............................................................................. 247 9.2.2 Sharding-Proxy 整合 Sharding-JDBC ............................................................. 256 9.3 本章小結 ............................................................................................................... 259 查看全部↓ 前言/序言 前言 隨著互聯網行業的飛速發展,我們需要進行快速的業務更新和產品迭代,同時也不得不面對快速增長的業務數據。在軟件繫統中,關繫型數據庫仍然是數據平臺核心業務的基石。但傳統的單庫單表的容量是有限的,當面對海量數據時,就需要引入分庫分表架構。我們可以結合縱向分庫和橫向分表的設計方法來應對海量數據的存儲和訪問。然而,在繫統中引入分庫分表架構遠遠沒有想像中的那麼簡單,我們在設計和實現分庫分表架構的過程中會遇到一繫列的問題。如何讓分庫分表能夠真正落地,將是擺在我們面前的一大挑戰。 在這樣的背景下,誕生了一些分庫分表解決方案和開源工具,而 ShardingSphere就是其中的代表性框架。作為 Apache 的項目,ShardingSphere 為我們提供了一繫列強大的功能。本書主要介紹基於 ShardingSphere 實現分庫分表所應具備的技術體繫,並針對該框架提供的 Sharding-JDBC 和 Sharding-Proxy 核心組件進行全面的討論,以及提供相應的工程實踐。 本書分為 9 章,分別從不同的領域對 ShardingSphere 的各個方面展開討論。 第 1 章直面數據分庫分表架構。主要從分庫分表的基本的概念出發,給出分庫分表解決方案和代表性框架,以及實現分庫分表架構所需要考慮的技術體繫,然後,針對 ShardingSphere 給出了該框架所提供的具體解決方案。 第 2 章引入 ShardingSphere。主要介紹如何使用 ShardingSphere,在應用程序中集成 ShardingSphere 的各種方式,以及如何使用 ShardingSphere 配置體繫完成開發工作。 第 3 章 ShardingSphere 整體架構。主要從架構體繫上對 ShardingSphere 進行剖析。作為基於 JDBC 規範的一款開源框架,ShardingSphere 完全兼容 JDBC 並基於微內核架構提供了插件化的運行機制,而開發人員也可以基於 Spring 框架完成與ShardingSphere 的無縫集成。 第 4 章~第 8 章 Sharding-JDBC 核心功能。這部分是本書的重點內容,主要介紹 ShardingSphere 中 Sharding-JDBC 組件的各項核心功能,包括數據分片、讀寫分離、分布式事務、數據脫敏和編排治理等。 第 9 章 ShardingSphere 代理服務。主要介紹 ShardingSphere 中的另一個核心組件 Sharding-Proxy。作為代理服務器的典型實現方案,Sharding-Proxy 為異構語言和異構繫統之間的集成提供了良好的支持。 在撰寫本書的過程中,感謝我的家人,特別是我的妻子章蘭婷女士,在我占用大量晚上和周末時間的情況下,能夠給予極大的支持和理解。感謝過去及現在的同事們,業界領先的公司和團隊讓我得到很多學習和成長的機會,如果沒有大家的幫助,就不會有這本書的誕生。特別感謝電子工業出版社的張春雨編輯,這本書能夠順利出版,離不開他的敬業精神和工作態度。 由於作者水平有限,書中難免存在一些疏漏和不足,希望同行專家和廣大讀者給予批評與指正。 ——鄭天民 2021 年 2 月於杭州錢江世紀城 查看全部↓
" | | | | | |