持續演進的Cloud Native:雲原生架構下微服務最佳實踐

持續演進的Cloud Native:雲原生架構下微服務最佳實踐 pdf epub mobi txt 電子書 下載2025

出版者:電子工業齣版社
作者:王啓軍
出品人:博文視點
頁數:316
译者:
出版時間:2018-10
價格:79
裝幀:平裝
isbn號碼:9787121351204
叢書系列:
圖書標籤:
  • 架構
  • 雲原生
  • 微服務
  • 架構,雲原生,微服務,一緻性,可用性,擴展性
  • 計算機
  • 技術
  • 開發_架構
  • 分布式
  • 雲原生
  • 微服務
  • 架構
  • 實踐
  • 開發
  • 運維
  • 容器化
  • Kubernetes
  • DevOps
  • 持續交付
想要找書就要到 小美書屋
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!

具體描述

《持續演進的Cloud Native:雲原生架構下微服務最佳實踐》從架構、研發流程、團隊文化三個角度詳細介紹瞭如何構建Cloud Native。作者長期活躍在研發一綫,具有豐富的架構設計經驗,也曾親身經曆過很多失敗的架構設計,如很多團隊在實施微服務架構的時候,隻強調拆分服務,根本沒有理解微服務架構應該怎麼做。《持續演進的Cloud Native:雲原生架構下微服務最佳實踐》就是想告訴讀者,除瞭拆分服務,還要把哪些事做好,例如基礎設施、一緻性、性能、研發流程、團隊文化等。

《持續演進的Cloud Native:雲原生架構下微服務最佳實踐》共分為10 章,第1 章從整體上描述瞭Cloud Native 的起源、組成及原則等;從第2 章到第7 章重點描述瞭微服務架構、敏捷基礎設施及公共基礎服務、可用性、可擴展性、性能、一緻性等方麵的設計實踐;第8 章介紹瞭Serverless 和Service Mesh;第9 章介紹瞭如何構建研發流程;第10 章介紹瞭如何建設團隊文化。

《持續演進的Cloud Native:雲原生架構下微服務最佳實踐》希望給技術管理者、架構師和有一定基礎的技術人員提供幫助,特彆是希望改變研發模式,從交付型軟件過渡到雲服務的傳統軟件企業開發者,此書將幫助你少走彎路。

著者簡介

王啓軍,目前就職於華為公司架構部,負責華為公司的Cloud Native、微服務架構推進落地,前後參與瞭華為手機祥雲4.0、物聯網IoT 2.0的架構設計。曾任當當架構師,主導電商平颱架構設計,包括訂單、支付、價格、庫存、物流等。曾就職於搜狐,負責手機微博的研發。十餘年的技術曆練,也曾作為技術負責人帶領過近百人的團隊。公眾號“奔跑中的蝸牛”的作者。

圖書目錄

第1章 綜述 1
1.1 Cloud Native的起源 1
1.2 Cloud Native的組成 4
1.3 Cloud Native背後的訴求 5
1.4 如何衡量Cloud Native的能力 5
1.5 Cloud Native的原則 6
第2章 微服務架構 11
2.1 微服務架構的起源 11
2.2 為什麼采用微服務架構 12
2.2.1 單體架構與微服務架構 12
2.2.2 什麼時候開始微服務架構 14
2.2.3 如何決定微服務架構的拆分粒度 14
2.3 微服務設計原則 15
2.4 微服務架構實施的先決條件 17
2.4.1 研發環境和流程上的轉變 17
2.4.2 拆分前先做好解耦 18
2.5 微服務劃分模式 20
2.5.1 基於業務復雜度選擇服務劃分方法 20
2.5.2 基於數據驅動劃分服務 21
2.5.3 基於領域驅動劃分服務 22
2.5.4 從已有單體架構中逐步劃分服務 23
2.5.5 微服務拆分策略 24
2.5.6 如何衡量服務劃分的閤理性 25
2.6 微服務劃分反模式 26
2.7 微服務API設計 28
2.7.1 優秀API的設計原則 28
2.7.2 服務間通信——RPC 28
2.7.3 序列化——Protobuf 30
2.7.4 服務間通信——RESTful 33
2.7.5 通過Swagger實現RESTful 36
2.7.6 通過Spring Boot、Springfox、Swagger實現RESTful 41
2.7.7 HTTP協議的進化——HTTP/2 46
2.7.8 HTTP/2和Protobuf的組閤——gRPC 48
2.8 微服務框架 53
2.9 基於Dubbo框架實現微服務 54
2.10 基於Spring Cloud框架實現微服務 58
2.11 服務發現場景下的ZooKeeper與Etcd 67
2.12 微服務部署策略 68
2.12.1 服務獨享數據庫 69
2.12.2 服務獨享虛擬機/容器 70
2.13 為什麼總覺得微服務架構很彆扭 70
第3章 敏捷基礎設施及公共基礎服務 73
3.1 傳統基礎設施麵臨的挑戰 73
3.2 什麼是敏捷基礎設施 74
3.3 基於容器的敏捷基礎設施 75
3.3.1 容器VS虛擬機 76
3.3.2 安裝Docker 77
3.3.3 部署私有Docker Registry 79
3.3.4 基於Spring Boot、Maven、Docker構建微服務 79
3.3.5 基於docker-compose管理容器 84
3.4 基於公共基礎服務的平颱化 85
3.5 監控告警服務 86
3.5.1 監控數據采集 87
3.5.2 監控數據接收模式 87
3.5.3 通過時間序列數據庫存儲監控數據 88
3.5.4 開源監控係統實現Prometheus 88
3.5.5 通過Prometheus和Grafana監控服務 90
3.6 分布式消息中間件服務 96
3.6.1 分布式消息中間件的作用 97
3.6.2 業界常用的分布式消息中間件 98
3.6.3 Kafka的設計原理 99
3.6.4 為什麼Kafka性能高 100
3.6.5 Kafka的數據存儲結構 102
3.6.6 如何保證Kafka不丟消息 104
3.6.7 Kafka跨數據中心場景集群部署模式 106
3.7 分布式緩存服務 108
3.7.1 分布式緩存的應用場景 109
3.7.2 業界常用的分布式緩存Memcached 110
3.7.3 業界常用的分布式緩存——Redis 111
3.7.4 Redis常用的分布式緩存集群模式 112
3.7.5 基於Codis實現Redis分布式緩存集群 116
3.8 分布式任務調度服務 118
3.8.1 通過Tbschedule實現分布式任務調度 119
3.8.2 通過Elastic-Job實現分布式任務調度 123
3.9 如何生成分布式ID 126
3.9.1 UUID 126
3.9.2 SnowFlake 127
3.9.3 Ticket Server 128
3.9.4 小結 129
第4章 可用性設計 130
4.1 綜述 130
4.1.1 可用性和可靠性的關係 130
4.1.2 可用性的衡量標準 131
4.1.3 什麼降低瞭可用性 131
4.2 逐步切換 132
4.2.1 影子測試 132
4.2.2 藍綠部署 133
4.2.3 灰度發布/金絲雀發布 134
4.3 容錯設計 135
4.3.1 消除單點 136
4.3.2 特性開關 136
4.3.3 服務分級 137
4.3.4 降級設計 138
4.3.5 超時重試 139
4.3.6 隔離策略 152
4.3.7 熔斷器 153
4.4 流控設計 157
4.4.1 限流算法 157
4.4.2 流控策略 159
4.4.3 基於Guava限流 160
4.4.4 基於Nginx限流 162
4.5 容量預估 163
4.6 故障演練 164
4.7 數據遷移 165
4.7.1 邏輯分離,物理不分離 166
4.7.2 物理分離 166
第5章 可擴展性設計 168
5.1 加機器能解決問題嗎 168
5.2 橫嚮擴展 169
5.3 AKF擴展立方體 170
5.4 如何擴展長連接 172
5.5 如何擴展數據庫 175
5.5.1 X軸擴展——主從復製集群 175
5.5.2 Y軸擴展——分庫、垂直分錶 176
5.5.3 Z軸擴展——分片(sharding) 177
5.5.4 為什麼要帶拆分鍵 182
5.5.5 分片後的關聯查詢問題 183
5.5.6 分片擴容(re-sharding) 184
5.5.7 精選案例 187
5.6 如何擴展數據中心 190
5.6.1 兩地三中心和同城多活 190
5.6.2 同城多活 191
5.6.3 異地多活 192
第6章 性能設計 194
6.1 性能指標 195
6.2 如何樹立目標 195
6.3 如何尋找平衡點 196
6.4 如何定位瓶頸點 197
6.5 服務通信優化 198
6.5.1 同步轉異步 198
6.5.2 阻塞轉非阻塞 199
6.5.3 序列化 200
6.6 通過消息中間件提升寫性能 201
6.7 通過緩存提升讀性能 202
6.7.1 基於ConcurrentHashMap實現本地緩存 203
6.7.2 基於Guava Cache實現本地緩存 204
6.7.3 緩存的常用模式 205
6.7.4 應用緩存的常見問題 207
6.8 數據庫優化 208
6.8.1 通過執行計劃分析瓶頸點 208
6.8.2 為搜索字段創建索引 209
6.8.3 通過慢查詢日誌分析瓶頸點 210
6.8.4 通過提升硬件能力優化數據庫 211
6.9 簡化設計 212
6.9.1 轉移復雜度 212
6.9.2 從業務角度優化 212
第7章 一緻性設計 214
7.1 問題起源 214
7.2 基礎理論 215
7.2.1 什麼是分布式事務 216
7.2.2 CAP定理 218
7.2.3 BASE理論 219
7.2.4 Quorum機製(NWR模型) 219
7.2.5 租約機製(Lease) 220
7.2.6 狀態機(Replicated State Machine) 221
7.3 分布式係統的一緻性分類 222
7.3.1 以數據為中心的一緻性模型 223
7.3.2 以用戶為中心的一緻性模型 226
7.3.3 業界常用的一緻性模型 229
7.4 如何實現強一緻性 230
7.4.1 兩階段提交 230
7.4.2 三階段提交(3PC) 231
7.5 如何實現最終一緻性 232
7.5.1 重試機製 232
7.5.2 本地記錄日誌 233
7.5.3 可靠事件模式 233
7.5.4 Saga事務模型 235
7.5.5 TCC事務模型 237
7.6 分布式鎖 238
7.6.1 基於數據庫實現悲觀鎖和樂觀鎖 239
7.6.2 基於ZooKeeper的分布式鎖 241
7.6.3 基於Redis實現分布式鎖 242
7.7 如何保證冪等性 244
7.7.1 冪等令牌(Idempotency Key) 244
7.7.2 在數據庫中實現冪等性 246
第8章 未來值得關注的方嚮 247
8.1 Serverless 247
8.1.1 什麼是Serverless 247
8.1.2 Serverless的現狀 248
8.1.3 Serverless的應用場景 249
8.2 Service Mesh 250
8.2.1 什麼是Service Mesh 250
8.2.2 為什麼需要Service Mesh 252
8.2.3 Service Mesh的現狀 253
8.2.4 Istio架構分析 255
第9章 研發流程 258
9.1 十二因子 258
9.2 為什麼選擇DevOps 261
9.3 自動化測試 263
9.3.1 單元測試 263
9.3.2 TDD 264
9.3.3 提交即意味著可測試 265
9.4 Code Review 265
9.4.1 Code Review的意義 265
9.4.2 Code Review的原則 266
9.4.3 Code Review的過程 267
9.5 流水綫 267
9.5.1 持續交付 267
9.5.2 持續部署流水綫 268
9.5.3 基於開源打造流水綫 268
9.5.4 Amazon的流水綫 271
9.5.5 開發人員自服務 271
9.6 為什麼需要AIOps 272
9.7 基於數據和反饋持續改進 273
9.8 擁抱變化 274
9.9 代碼即設計 274
第10章 團隊文化 276
10.1 為什麼團隊文化如此重要 276
10.2 組織結構 278
10.2.1 團隊規模導緻的問題 278
10.2.2 康威定律 278
10.2.3 扁平化的組織 279
10.2.4 獨裁的管理方式還是民主的管理方式 280
10.2.5 民主的團隊如何做決策 282
10.3 環境氛圍 282
10.3.1 公開透明的工作環境 282
10.3.2 學習型組織 283
10.3.3 減少正式的匯報 284
10.3.4 高效的會議 284
10.3.5 量化指標緻死 286
10.4 管理風格 287
10.4.1 下屬請假你會拒絕嗎 287
10.4.2 為什麼你招不到你想要的人 288
10.4.3 得到瞭所有人的認可,說明你並不是一個好的管理者 291
10.4.4 盡量避免用自己的權力去做決策 291
10.4.5 一屋不掃也可助你“蕩平天下” 292
10.4.6 如何留下你想要的人293
10.5 經典案例 294
10.5.1 Instagram的團隊文化 294
10.5.2 Netflix的團隊文化 294
· · · · · · (收起)

讀後感

評分

又是一本写云原生架构的好书。这本书与《未来架构》面临同样的难题,云原生这个问题太大,不像云、微服务架构这些问题那么相对紧凑,粒度小到可以被当作一个易于处理的点来对待,云原生更像是一个由这些可以被看作点的相关技术构成的体系,每一个点要想说清楚都至少需要一本书...

評分

又是一本写云原生架构的好书。这本书与《未来架构》面临同样的难题,云原生这个问题太大,不像云、微服务架构这些问题那么相对紧凑,粒度小到可以被当作一个易于处理的点来对待,云原生更像是一个由这些可以被看作点的相关技术构成的体系,每一个点要想说清楚都至少需要一本书...

評分

又是一本写云原生架构的好书。这本书与《未来架构》面临同样的难题,云原生这个问题太大,不像云、微服务架构这些问题那么相对紧凑,粒度小到可以被当作一个易于处理的点来对待,云原生更像是一个由这些可以被看作点的相关技术构成的体系,每一个点要想说清楚都至少需要一本书...

評分

又是一本写云原生架构的好书。这本书与《未来架构》面临同样的难题,云原生这个问题太大,不像云、微服务架构这些问题那么相对紧凑,粒度小到可以被当作一个易于处理的点来对待,云原生更像是一个由这些可以被看作点的相关技术构成的体系,每一个点要想说清楚都至少需要一本书...

評分

又是一本写云原生架构的好书。这本书与《未来架构》面临同样的难题,云原生这个问题太大,不像云、微服务架构这些问题那么相对紧凑,粒度小到可以被当作一个易于处理的点来对待,云原生更像是一个由这些可以被看作点的相关技术构成的体系,每一个点要想说清楚都至少需要一本书...

用戶評價

评分

看評分就知道請瞭不少水軍。 雖然已經有心理預期,但還是不得不感嘆,書名國內企業的作者寫的書一如既往的差。似乎這些人寫書的目的並不是要給讀者看,教會讀者一些技術和思想,而是為瞭讓自己的名字齣現在一本書的作者欄而已。 希望一個負責任的作者不要隻是堆砌內容,要考慮讓讀者獲得些什麼。

评分

持續演進的Cloud Native 又是一本寫雲原生架構的好書。這本書與《未來架構》麵臨同樣的難題,雲原生這個問題太大,不像雲、微服務架構這些問題那麼相對緊湊,粒度小到可以被當作一個易於處理的點來對待,雲原生更像是一個由這些可以被看作點的相關技術構成的體係,每一個點要想說清楚都至少需要一本書,現在要放在一本書裏邊講,就麵臨一個在材料方麵如何取捨的問題,選擇不好必然會影響可讀性和總體觀感。《未來架構》作者的選材思路是根據自己的認識和經驗挑一些重點領域著筆墨,其他直接略過,所以顯然是事先在寫作框架內圈定瞭遠程通信、服務治理、服務監控和數據架構這些東西,然後再在這個範圍內重點介紹Apache SkyWalking、Dubbo、S(後文見書評正文)

评分

對目前主流框架以及主流架構的介紹,還可以,基本都有介紹到,看完能有個全麵的認識,適閤入門

评分

作為國人寫得一本書,還是看得齣作者用心的態度和認真的分享。雖然從第四章到第七章主要是講架構方麵的議題,不過還是很好的介紹瞭雲原生以及微服務的一些實踐經驗

评分

這書也可以給到8.5以上????通篇都各種抄,大眾架構理論。。除瞭最後一章的管理思維,沒看到作者的任何思考,讓我覺得這本書作者真的懂什麼是雲原生嗎??

本站所有內容均為互聯網搜索引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 book.quotespace.org All Rights Reserved. 小美書屋 版权所有