內容簡介
本書主要介紹了雲計算時代最新、最經典的24種架構設計模式,包含基於雲平台設計架構面臨的問題以及典型的解決方案,另外還有10個架構設計指南。
24種經典的設計模式包括高並發、健康健康、訊息編排、架構伸縮、快取、訊息推送、大數據存儲和最佳化、安全令牌等架構設計的關鍵問題,是難得的架構與設計模式圖書。
本書內容不受程式語言限制,可以根據需要使用.NET、Java、PHP、Node.js、Go等。雲計算平台可以是Azure、AWS、阿里雲等共有雲,也可以是私有雲平台。
推薦本書給高級工程師、運維工程師、架構師、技術經理、技術總監、CTO學習使用。
作者簡介
Alex Homer是微軟PP小組的技術作者。在加入微軟之前,他做了多年的軟體設計和培訓工作。他在小組的主要精力花費在設計模式和架構方面,還編寫指南和例子代碼。
John Sharp 是Content Master 的首席技術專家。專注於使用.NET框架和Azure平台開發套用系統。John寫過《Microsoft Visual C# Step By Step》 和 《Microsoft WCF Step By Step》。John講授過許多培訓課程,也寫過許多覆蓋諸多領域,比如C和C++編程、SQL Server資料庫管理以及面向服務架構的技術文章。他獲得了倫敦大學帝國理工學院的計算機科學學位。
Larry Brader是微軟模式與實踐小組的高級測試工程師,負責PP小組不同項目的測試工作,專注於客戶端和伺服器端。此外他對於基於ALM生成測試指南也有濃厚的興趣。
Masashi Narumoto熱衷於將網際網路作為知識庫的想法。網際網路已經顯著改變了我們的生活,毫無疑問還會帶來巨大的變化。他的目標是匯聚大家的智慧以更有意義的形式提供出來,方便更多的人學習。在就職於模式與實踐小組期間,他作為程式經理負責並完成了多個Azure指南的系列文檔的編寫工作關注於大數據領域。之前,他花費了20多年時間來開發和諮詢各種不同的解決方案,尤其是零售和製造業。
Trent Swanson是Full Scale 180的軟體架構師,也是創始人之一,主要使用雲計算技術。他一開始就使用Azure技術,幫助全球各地的客戶來構建、部署和管理Azure上的雲計算解決方案。無論是遷移現有套用到雲計算平台還是構建全新套用,他都享受整個交付伸縮的、可靠的和可管理的雲計算解決方案。
作品目錄
目錄
Table of Contents
第1章 快取駐留模式 1
背景和問題 1
解決方案 1
相關模式與指南 5
更多信息 5
第2章 斷路器模式 6
背景和問題 6
解決方案 6
問題與思考 8
何時使用此模式 10
相關模式和指南 14
第3章 補償事務模式 15
背景和問題 15
解決方案 16
問題與思考 16
何時使用此模式 17
相關模式和指南 18
第4章 競爭消費者模式 19
背景和問題 19
解決方案 19
問題與思考 20
何時使用此模式 21
第5章 計算資源合併模式 25
背景和問題 25
解決方案 26
問題與思考 26
套用場景 28
相關模式和指南 32
擴展閱讀 32
第6章 命令和查詢職責分離(CQRS)模式 33
背景和問題 33
解決方案 34
問題與思考 35
何時使用此模式 36
第7章 事件溯源模式 41
背景和問題 41
解決方案 41
問題與思考 43
何時使用此模式 44
相關模式和指南 47
第8章 外部配置存儲模式 48
背景和問題 48
解決方案 48
問題與思考 49
何時使用此模式 50
關聯模式和指南 56
第9章 聯合身份模式 57
背景和問題 57
解決方案 57
問題與思考 59
何時使用此模式 59
相關模式和指南 61
更多信息 61
第10章 門衛模式 62
背景和問題 62
解決方案 62
問題與思考 63
何時使用此模式 63
相關模式和指南 64
第11章 健康終端監控模式 65
背景和問題 65
解決方案 65
問題與思考 67
何時使用此模式 68
相關模式和指南 71
更多信息 71
第12章 索引表模式 72
背景和問題 72
解決方案 73
問題與思考 75
何時使用此模式 76
相關模式與指南 77
第13章 領導者選舉模式 79
背景和問題 79
解決方案 79
問題與思考 80
何時使用此模式 80
相關模式與指南 85
更多信息 85
第14章 實體化視圖模式 86
背景和問題 86
解決方案 86
問題與思考 87
何時使用此模式 88
相關模式與指南 89
第15章 管道過濾器模式 90
背景和問題 90
解決方案 91
問題與思考 92
何時使用此模式 93
相關模式與指南 97
第16章 優先佇列模式 98
背景和問題 98
解決方案 98
問題與思考 100
何時使用此模式 101
相關模式與指南 103
第17章 基於佇列的負載均衡模式 105
背景和問題 105
解決方案 105
問題與思考 106
何時使用此模式 107
相關模式和指南 108
第18章 重試模式 109
背景和問題 109
解決方案 109
問題與思考 111
何時使用此模式 112
相關模式與指南 114
更多信息 114
第19章 運行時重配模式 115
背景和問題 115
解決方案 115
問題與思考 116
何時使用此模式 117
相關的模式和指南 120
更多的信息 121
第20章 調度器代理管理者模式 122
背景和問題 122
解決方案 122
問題與思考 125
何時使用此模式 125
相關模式與指南 128
更多信息 129
第21章 分片模式 130
背景和問題 130
解決方案 130
分片策略 131
問題與思考 135
何時使用此模式 136
相關模式與指南 138
第22章 靜態內容託管模式 139
背景和問題 139
解決方案 139
問題與思考 139
何時使用此模式 140
相關模式與指南 143
更多信息 143
第23章 限流模式 144
背景和問題 144
解決方案 144
問題與思考 146
何時使用此模式 147
相關模式與指南 148
第24章 令牌秘鑰模式 149
背景和問題 149
解決方案 149
問題與思考 150
何時使用此模式 152
相關模式和指南 154
更多信息 154
第25章 異步訊息傳輸指南 155
訊息佇列本質 155
異步訊息傳遞的場景 158
實現異步訊息傳遞的注意事項 159
相關模式和指南 161
更多信息 162
第26章 自動伸縮指南 163
什麼是自動伸縮 163
實施自動伸縮的場景 164
實施自動伸縮的注意事項 164
Azure解決方案中的自動伸縮 165
相關模式和指南 167
更多信息 167
第27章 快取指南 168
雲應用程式中的快取 168
使用快取的注意事項 170
管理快取並發 172
相關模式和指南 173
更多信息 173
第28章 計算分區指南 174
Azure計算選項概述 174
計算界限設計指南 174
組件分離計算實例 176
相關模式與指南 177
更多信息 178
第29章 數據一致性指南 179
管理數據一致性 179
最終一致性實現的注意事項 182
相關模式與指南 185
第30章 數據分區指南 186
為什麼需要數據分區 186
分區策略 187
設計可擴展性的數據分區 190
設計分區以提升查詢性能 191
分區可用性設計 192
問題與思考 192
相關模式與指南 194
更多信息 194
第31章 數據複製與同步指南 195
為什麼要數據複製及同步 195
複製和同步數據 195
數據複製和同步的注意事項 198
實現同步 200
相關模式與指南 201
更多信息 201
第32章 遠程監控指南 202
為什麼遠程監控很重要 202
監控 202
語義日誌記錄 204
遙測 205
遠程監控的注意事項 205
相關模式與指南 207
更多信息 208
第33章 多數據中心部署指南 209
為什麼部署到多個數據中心 209
多數據中心部署的思考 213
相關模式及指南 217
第34章 服務調用統計指南 218
為什麼服務調用統計很重要 218
服務調用統計的場景 218
服務調用統計的注意事項 220
示例 221
相關模式及指南 222
更多信息 222