架構寶典

書籍信息,內容簡介,圖書目錄,

書籍信息

作譯者:中生代技術社區
出版時間:2019-03千 字 數:381版次:01-01頁 數:280
開本:16開裝幀:I S B N :9787121360664
換版:
紙質書定價:¥75.0

內容簡介

本書從架構設計概念、方法、模式、實踐案例等4 個方面進行闡述,內容豐富,是一本可以很好指導實踐的書籍,更是各位資深專家和架構師的經驗總結。本書共分為4 部分:第一部分介紹架構設計的概念、方法論,以及架構師的核心能力;第二部分介紹微服務架構選型、架構模式與實踐、數據一致性保證、微服務與DevOps 的關係以及如何設計雲微服務架構;第三部分介紹移動電商、消費信貸、支付系統、金融撮合等領域的優秀實踐;第四部分介紹最佳化系統架構性能的方法論、案例、關鍵技術等。本書適合即將步入架構領域的技術專家,以及致力於提升軟體架構設計能力的架構師、設計人員和開發人員閱讀,希望本書能夠為讀者的實際工作和個人成長提供幫助。

圖書目錄

第1 篇 架構方法論
1 有關架構的概念認知............................................................................................................................... 2
1.1 引言................................................................................................................................................... 2
1.2 認識架構.......................................................................................................................................... 2
1.3 規劃、架構與設計........................................................................................................................ 4
1.3.1 三個不同層次的概念.............................................................................................................. 4
1.3.2 規劃與架構............................................................................................................................. 4
1.3.3 架構與設計............................................................................................................................. 5
1.4 解耦與服務化................................................................................................................................ 6
1.5 分工與組件化................................................................................................................................ 6
1.6 集中與分布..................................................................................................................................... 7
1.7 規劃還是演化................................................................................................................................ 8
1.8 簡化也很必要................................................................................................................................ 9
1.9 架構與軟體開發(軟體過程) ................................................................................................11
1.9.1 敏捷軟體開發........................................................................................................................11
1.9.2 敏捷軟體開發與微服務架構.................................................................................................12
1.10 探討傳統企業IT 系統架構.....................................................................................................12
1.10.1 從架構角度解決企業套用痛點...........................................................................................13
1.10.2 企業套用系統架構服務化遷移步驟...................................................................................13
1.10.3 企業套用系統架構服務化參考模型...................................................................................14
1.11 總結................................................................................................................................................15
2 以終為始的架構設計...............................................................................................................................16
2.1 緣起..................................................................................................................................................16
2.2 我們的思考方式............................................................................................................................17
2.3 為什麼要做架構設計...................................................................................................................18
2.3.1 由模型到實施........................................................................................................................18
2.3.2 業務規模發展帶來的複雜度.................................................................................................19
2.3.3 從溝通視角看軟體架構.........................................................................................................20
2.4 如何做架構設計............................................................................................................................20
2.4.1 以終為始,不忘初心.............................................................................................................21
2.4.2 PMC 框架...............................................................................................................................21
2.4.3 從多視角、多層次看架構.....................................................................................................23
2.4.4 滿足利益相關者的需要.........................................................................................................25
2.4.5 聚焦SLA...............................................................................................................................26
2.4.6 抽象、協作、擴展、復用.....................................................................................................28
2.4.7 分析全息視圖........................................................................................................................29
2.5 架構是什麼....................................................................................................................................29
2.5.1 架構兼具組成和決策的特點.................................................................................................30
2.5.2 架構是演進來的.....................................................................................................................30
2.5.3 無純粹的非功能特性.............................................................................................................31
2.6 總結..................................................................................................................................................32
3 閉環架構方法............................................................................................................................................34
3.1 系統提升的一般性方法和反饋環............................................................................................34
3.2 產品創新閉環...............................................................................................................................36
3.3 組織閉環.........................................................................................................................................37
3.4 研發流程閉環...............................................................................................................................39
3.5 系統架構閉環...............................................................................................................................40
3.6 一個反饋閉環實例.......................................................................................................................41
3.7 總結..................................................................................................................................................44
4 複雜與架構演進的關係..........................................................................................................................46
4.1 什麼是複雜....................................................................................................................................46
4.1.1 規模.......................................................................................................................................47
4.1.2 結構.......................................................................................................................................51
4.1.3 變化.......................................................................................................................................58
4.2 用架構思維控制複雜...................................................................................................................67
4.2.1 分而治之,控制規模.............................................................................................................67
4.2.2 保持架構的清晰與一致.........................................................................................................67
4.2.3 擁抱變化...............................................................................................................................70
4.3 總結..................................................................................................................................................71
5 架構師的核心能力...................................................................................................................................72
5.1 架構師承擔的職責.......................................................................................................................72
5.2 架構師的核心能力.......................................................................................................................73
5.2.1 經驗.......................................................................................................................................73
5.2.2 溝通.......................................................................................................................................74
5.2.3 快速學習...............................................................................................................................74
5.2.4 解決問題的能力.....................................................................................................................76
5.3 架構能力的修煉............................................................................................................................76
5.4 總結..................................................................................................................................................77
第2 篇 面向架構的架構(微服務)
6 快速繼承微服務實踐...............................................................................................................................80
6.1 概述..................................................................................................................................................80
6.2 我們希望的微服務是什麼樣子的............................................................................................81
6.3 實現微服務....................................................................................................................................82
6.4 實現的考量及調研.......................................................................................................................83
6.4.1 gRPC 有什麼問題..................................................................................................................83
6.4.2 如何提高易用性.....................................................................................................................83
6.5 讓微服務快速落地.......................................................................................................................87
6.6 總結..................................................................................................................................................89
7 微服務架構下的事務處理......................................................................................................................90
7.1 概述..................................................................................................................................................90
7.2 使用傳統的本地事務和分散式事務保證一致性................................................................90
7.3 在微服務架構中應滿足數據最終一致性原則.....................................................................92
7.4 微服務架構實現最終一致性的三種模式..............................................................................92
7.4.1 可靠事件模式........................................................................................................................93
7.4.2 業務補償模式......................................................................................................................101
7.4.3 TCC(Try-Confirm-Cancel)模式......................................................................................106
7.5 總結................................................................................................................................................109
8 微服務架構模式與實踐........................................................................................................................110
8.1 微服務的主要架構模式............................................................................................................110
8.1.1 一體化模式..........................................................................................................................110
8.1.2 聚合模式..............................................................................................................................110
8.1.3 代理模式..............................................................................................................................111
8.1.4 資源共享模式......................................................................................................................112
8.1.5 異步訊息模式......................................................................................................................112
8.2 大量微服務帶來的挑戰............................................................................................................112
8.3 微服務在好雨的解決方案.......................................................................................................113
8.3.1 服務發現和註冊...................................................................................................................113
8.3.2 彈性伸縮與負載均衡...........................................................................................................115
8.3.3 容錯處理(斷路器與限流)...............................................................................................116
8.3.4 監控與報警..........................................................................................................................116
8.3.5 數據存儲與共享...................................................................................................................116
8.3.6 日誌分析..............................................................................................................................117
8.4 總結................................................................................................................................................118
9 微服務與DevOps 架構實踐...............................................................................................................119
9.1 概述................................................................................................................................................119
9.2 某金融創業公司的微服務架構選型.....................................................................................122
9.3 設計思想.......................................................................................................................................124
9.4 總體架構.......................................................................................................................................125
9.4.1 總體架構的特性...................................................................................................................125
9.4.2 具體實現..............................................................................................................................126
9.5 對微服務的支撐..........................................................................................................................128
9.6 DevOps 平台總體架構..............................................................................................................130
9.7 面向微服務的研發團隊介紹...................................................................................................131
9.8 總結................................................................................................................................................133
10 基於雲的微服務架構..........................................................................................................................134
10.1 概述..............................................................................................................................................134
10.2 德比軟體數據對接平台的架構............................................................................................134
10.3 德比軟體微服務架構基礎設施............................................................................................135
10.4 API 網關.....................................................................................................................................136
10.5 服務框架....................................................................................................................................136
10.5.1 高可用RPC........................................................................................................................137
10.5.2 服務依賴管理....................................................................................................................138
10.6 基礎服務....................................................................................................................................140
10.6.1 配置中心............................................................................................................................140
10.6.2 安全數據服務....................................................................................................................141
10.6.3 數據存儲服務....................................................................................................................141
10.6.4 訂單服務............................................................................................................................142
10.7 服務降級....................................................................................................................................142
10.8 自動化.........................................................................................................................................142
10.9 日誌處理....................................................................................................................................143
10.10 調用鏈追蹤..............................................................................................................................144
10.11 服務健康狀態..........................................................................................................................144
10.11.1 報警.................................................................................................................................144
10.11.2 監控.................................................................................................................................145
10.12 發布管理..................................................................................................................................146
10.13 總結...........................................................................................................................................147
11 Service Fabric:平台架構解析.......................................................................................................148
11.1 Service Fabric 概述...................................................................................................................148
11.1.1 Service Fabric 的特點.........................................................................................................148
11.1.2 Service Fabric 的適用場景.................................................................................................149
11.2 Service Fabric 編程模式..........................................................................................................150
11.3 Service Fabric 服務通信..........................................................................................................152
11.3.1 Service Fabric 的微服務開發工具.....................................................................................153
11.3.2 對Service Fabric 的微服務進行監控和診斷....................................................................153
11.4 Service Fabric 可靠服務概述................................................................................................154
11.4.1 Service Fabric 可靠服務——有狀態服務的體系結構......................................................154
11.4.2 Service Fabric 可靠服務——無狀態服務的體系結構......................................................156
11.4.3 Service Fabric 可靠服務——備份.....................................................................................157
11.5 Service Fabric 可靠執行組件................................................................................................157
11.6 Service Fabric 容器應用程式................................................................................................159
11.7 總結..............................................................................................................................................160
第3 篇 面向業務的架構
12 如何搭建高可伸縮的移動電商架構...............................................................................................162
12.1 概述微服務的主要架構模式.................................................................................................162
12.2 移動端的混合架構...................................................................................................................162
12.3 伺服器端的SOA 架構............................................................................................................164
12.4 PC 端和移動端的開發協作管理..........................................................................................166
12.5 基於容器的虛擬化...................................................................................................................166
12.6 關於電商的私有雲建設..........................................................................................................167
12.7 如何套用彈性雲來應對電商大促.......................................................................................169
12.8 應對電商大促峰值的“獨孤九劍”...................................................................................170
13 消費信貸系統“白付美”是如何持續最佳化的............................................................................172
13.1 “白付美”介紹..........................................................................................................................172
13.2 “白付美”從0 到1..................................................................................................................172
13.3 大促期間的性能保證..............................................................................................................174
13.4 大促期間的穩定性保證..........................................................................................................177
13.5 為服務多平台所做的最佳化.....................................................................................................178
13.6 未來的最佳化方向........................................................................................................................179
13.7 總結..............................................................................................................................................180
14 美麗聯合集團支付系統架構演進...................................................................................................182
14.1 概述..............................................................................................................................................182
14.2 支付系統1.0 ..............................................................................................................................182
14.2.1 業務問題............................................................................................................................183
14.2.2 系統問題............................................................................................................................184
14.2.3 資金問題............................................................................................................................185
14.3 支付系統2.0 ..............................................................................................................................185
14.3.1 拆分系統邊界....................................................................................................................185
14.3.2 支付系統2.0 系統詳解.....................................................................................................187
14.3.3 統一平台業務上下文.........................................................................................................192
14.3.4 直面數據一致性挑戰.........................................................................................................192
14.4 性能提升....................................................................................................................................194
14.5 穩定性提升................................................................................................................................201
14.5.1 監控先行............................................................................................................................201
14.5.2 分離核心鏈路....................................................................................................................201
14.5.3 服務依賴梳理....................................................................................................................203
14.5.4 限流降級............................................................................................................................203
14.6 壓測..............................................................................................................................................204
14.7 成效..............................................................................................................................................204
14.7.1 業務支撐能力....................................................................................................................204
14.7.2 系統服務能力....................................................................................................................205
14.8 總結..............................................................................................................................................206
15 金融撮合架構.......................................................................................................................................207
15.1 概述..............................................................................................................................................207
15.2 系統總體設計............................................................................................................................208
15.2.1 系統核心模組....................................................................................................................208
15.2.2 撮合算法設計....................................................................................................................209
15.2.3 基於記憶體撮合....................................................................................................................212
15.2.4 災備的多機設計.................................................................................................................212
15.2.5 狀態機複製........................................................................................................................213
15.2.6 系統架構............................................................................................................................215
15.3 總結..............................................................................................................................................218
第4 篇 面向性能的架構
16 一線架構師帶你玩性能最佳化.............................................................................................................220
16.1 什麼是系統最佳化........................................................................................................................220
16.2 系統最佳化的方法論、思路和原則.......................................................................................220
16.2.1 常用方法論........................................................................................................................221
16.2.2 最佳化思路............................................................................................................................221
16.2.3 最佳化原則............................................................................................................................222
16.3 性能最佳化....................................................................................................................................222
16.3.1 常見的性能問題.................................................................................................................222
16.3.2 性能最佳化的具體工作.........................................................................................................223
16.3.3 JVM 最佳化...........................................................................................................................230
16.3.4 資料庫最佳化........................................................................................................................233
16.3.5 負載均衡最佳化....................................................................................................................235
16.4 總結..............................................................................................................................................237
17 性能最佳化的常見模式及趨勢.............................................................................................................238
17.1 性能最佳化的優缺點...................................................................................................................238
17.2 性能最佳化的兩種模式..............................................................................................................239
17.3 單套用最佳化................................................................................................................................239
17.3.1 最佳化的基本思路.................................................................................................................239
17.3.2 確定性能瓶頸/熱點的常見方法........................................................................................240
17.3.3 壓測時通常觀察的內容及其所使用的工具.....................................................................240
17.3.4 常見的最佳化手段及模式.....................................................................................................240
17.4 結構型最佳化................................................................................................................................241
17.5 兩個結構型最佳化的案例..........................................................................................................245
17.5.1 處理單點/網路瓶頸的可行方式........................................................................................245
17.5.2 處理資料庫連線池瓶頸的可行手段.................................................................................245
17.6 總結..............................................................................................................................................247
18 性能最佳化之幾種常見的壓測模型及其優缺點............................................................................248
18.1 壓測模型抽象............................................................................................................................248
18.1.1 壓測環境準備....................................................................................................................249
18.1.2 壓測任務準備....................................................................................................................249
18.1.3 壓測執行閉環....................................................................................................................249
18.2 線下壓測模型............................................................................................................................250
18.3 線上引流壓測模型...................................................................................................................251
18.4 線上全鏈路壓測模型..............................................................................................................252
18.5 總結..............................................................................................................................................253
19 快取為王——無線快取架構最佳化....................................................................................................254
19.1 無線快取的定義、限制條件及影響...................................................................................254
19.2 無線快取要從全局考慮..........................................................................................................254
19.2.1 伺服器端架構對無線快取的影響.....................................................................................254
19.2.2 無線快取對伺服器端架構的影響.....................................................................................255
19.2.3 大流量下無線快取作用的劣化.........................................................................................256
19.2.4 無線快取與本機移動端組件的關係.................................................................................256
19.2.5 無線快取存儲介質的選擇.................................................................................................257
19.3 數據、資源快取及失效策略.................................................................................................257
19.3.1 架構詳論............................................................................................................................257
19.3.2 實現失效策略....................................................................................................................259
19.4 總結..............................................................................................................................................263

相關詞條

熱門詞條

聯絡我們