未來架構:從服務化到雲原生

未來架構:從服務化到雲原生

《未來架構:從服務化到雲原生》一書中對快速演進中的雲原生數據架構、典型分散式資料庫中間件進行了剖析,重點介紹Service Mesh等新興概念,創新性地提出了Database Mesh的理念。

基本介紹

  • 書名:未來架構:從服務化到雲原生
  • 作者:張亮 等
  • ISBN:978-7-121-35535-6
  • 頁數:344
  • 定價:99
  • 出版社:電子工業出版社
  • 出版時間:2019-03
  • 裝幀:平裝
  • 開本:16
內容提要,目錄,作者簡介,

內容提要

網際網路架構不斷演化,經歷了從集中式架構到分散式架構,再到雲原生架構的過程。雲原生因能解決傳統套用升級緩慢、架構臃腫、無法快速疊代等問題而成了未來雲端套用的目標。
《未來架構:從服務化到雲原生》首先介紹架構演化過程及雲原生的概念,讓讀者對基礎概念有一個準確的了解,接著闡述分散式、服務化、可觀察性、容器調度、Service Mesh、雲資料庫等技術體系及原理,並介紹相關的SkyWalking、Dubbo、Spring Cloud、Kubernetes、Istio等開源解決方案,最後深度揭秘開源分散式資料庫生態圈ShardingSphere的設計、實現,以及進入Apache基金會的歷程,非常適合架構師、雲計算從業人員閱讀、學習。

目錄

第1章 雲原生 1
1.1 網際網路架構變遷 2
1.1.1 網際網路架構的核心問題 2
1.1.2 從集中式架構到分散式架構 5
1.1.3 從分散式架構到雲原生架構 10
1.2 什麼是雲原生 15
1.2.1 概述 15
1.2.2 雲原生與十二要素 16
1.2.3 十二要素進階 23
1.2.4 雲原生與CNCF 24
第2章 遠程通信 41
2.1 通信方式 41
2.1.1 通信協定 42
2.1.2 I/O模型 51
2.1.3 Java中的I/O 53
2.2 序列化 66
2.2.1 文本序列化 67
2.2.2 二進制Java序列化 68
2.2.3 二進制異構語言序列化 71
2.3 遠程調用 78
2.3.1 核心概念 78
2.3.2 Java遠程方法調用 79
2.3.3 異構語言RPC框架gRPC 82
第3章 配置 89
3.1 本地配置 89
3.2 配置集中化 90
3.3 配置中心和註冊中心 91
3.4 讀性能 92
3.5 變更實時性 93
3.6 可用性 94
3.7 數據一致性 96
第4章 服務治理 97
4.1 服務發現 97
4.1.1 服務發現概述 97
4.1.2 ZooKeeper 100
4.1.3 Eureka 109
4.2 負載均衡 112
4.2.1 服務端負載均衡 112
4.2.2 客戶端負載均衡 115
4.3 限流 118
4.3.1 限流算法 119
4.3.2 限流實現方案 121
4.3.3 限流的維度與粒度 129
4.4 熔斷 131
4.4.1 概述 131
4.4.2 熔斷器模式 132
4.4.3 Hystrix 133
第5章 觀察分散式服務 135
5.1 層次劃分 136
5.2 核心概念 136
5.3 分散式追蹤 138
5.3.1 概述 138
5.3.2 常見的開源解決方案 139
5.4 套用性能管理與可觀察性平台 140
5.5 Apache SkyWalking 142
5.5.1 項目定位 142
5.5.2 SkyWalking 5核心架構 143
5.5.3 SkyWalking 5公開案例 146
5.5.4 SkyWalking 6可觀察性分析平台 147
第6章 侵入式服務治理方案 157
6.1 Dubbo 157
6.1.1 Dubbo概述 158
6.1.2 核心流程 160
6.1.3 註冊中心 160
6.1.4 負載均衡 162
6.1.5 遠程通信 163
6.1.6 限流 164
6.1.7 治理中心 165
6.1.8 監控中心 165
6.1.9 DubboX的擴展 166
6.2 Spring Cloud 168
6.2.1 概述 168
6.2.2 開發腳手架Spring Boot 172
6.2.3 服務發現 174
6.2.4 負載均衡 176
6.2.5 熔斷 178
6.2.6 遠程通信 179
第7章 雲原生生態的基石Kubernetes 181
7.1 Kubernetes架構 182
7.2 分層設計理念及架構模型 183
7.3 設計哲學 184
7.4 Kubernetes中的原語 185
7.4.1 Kubernetes中的對象 185
7.4.2 對象的期望狀態與實際狀態 186
7.4.3 描述Kubernetes對象 187
7.4.4 服務發現與負載均衡 188
7.4.5 安全性與許可權管理 189
7.4.6 Sidecar設計模式 190
7.5 套用Kubernetes 190
7.6 Kubernetes與雲原生生態 192
7.6.1 下一代雲計算標準 192
7.6.2 當前存在的問題 192
7.6.3 未來趨勢 193
第8章 跨語言服務治理方案Service Mesh 195
8.1 Service Mesh概述 195
8.1.1 Service Mesh的由來 195
8.1.2 Service Mesh的定義 196
8.1.3 Service Mesh詳解 197
8.2 Service Mesh演進歷程 200
8.2.1 遠古時代的案例 200
8.2.2 微服務時代的現狀 201
8.2.3 侵入式框架的痛點 202
8.2.4 解決問題的思路 206
8.2.5 Proxy模式的探索 207
8.2.6 Sidecar模式的出現 208
8.2.7 第一代Service Mesh 209
8.2.8 第二代Service Mesh 210
8.3 Service Mesh市場競爭 212
8.3.1 Service Mesh的萌芽期 212
8.3.2 急轉直下的Linkerd 212
8.3.3 波瀾不驚的Envoy 214
8.3.4 背負使命的Istio 214
8.3.5 背水一戰的Buoyant 215
8.3.6 其他參與者 217
8.3.7 Service Mesh的國內發展情況 219
8.4 Istio 220
8.4.1 Istio概述 220
8.4.2 架構和核心組件 222
第9章 雲原生數據架構 232
9.1 關係型資料庫尚能飯否 232
9.1.1 優勢 233
9.1.2 不足 234
9.2 未達預期的NoSQL 235
9.2.1 鍵值資料庫 235
9.2.2 文檔資料庫 236
9.2.3 列族資料庫 236
9.3 冉冉升起的NewSQL 237
9.3.1 新架構 238
9.3.2 透明化分片中間件 238
9.3.3 雲資料庫 239
9.4 雲原生資料庫中間件的核心功能 239
9.4.1 數據分片 239
9.4.2 分散式事務 258
9.4.3 資料庫治理 265
第10章 分散式資料庫中間件生態圈ShardingSphere 267
10.1 緣起 267
10.1.1 內部套用框架 268
10.1.2 開源歷程 269
10.2 核心功能 271
10.2.1 數據分片 272
10.2.2 分散式事務 301
10.2.3 資料庫治理 307
10.3 Sharding-JDBC 310
10.3.1 概述 310
10.3.2 使用說明 311
10.4 Sharding-Proxy 316
10.4.1 概述 316
10.4.2 使用說明 317
10.5 Database Mesh 317
10.5.1 概述 317
10.5.2 Service Mesh回顧 318
10.5.3 Database Mesh與Service Mesh的異同 319
10.5.4 Sharding-Sidecar 320
10.6 未來規劃 321

作者簡介

張亮
京東數科數據研發負責人,Apache ShardingSphere發起人兼PPMC成員。熱愛分享,擁抱開源,主張代碼優雅化,擅長以Java為主的分散式架構以及以Kubernetes和Mesos為主的雲平台的構建。ShardingSphere已進入Apache軟體基金會,是京東集團首個進入Apache的開源項目,也是Apache首個分散式資料庫中間件。

相關詞條

熱門詞條

聯絡我們