網易雲平颱開發一綫的主力,為你講述雲原生的技術體係,展示從單體到服務化架構的演進。
針對企業如何采用雲原生架構實現高效的産品迭代能力、支持互聯網業務健康發展,《雲原生應用架構實踐》總結瞭一套可行的方法論。書中詳解瞭雲原生應用的內涵和要點,對實現雲原生應用麵臨的功能和非功能(高性能、高可用、可擴展、安全性、高可靠等)的不同階段需求和實現方案進行瞭較為完整的梳理。內容涵蓋瞭係統工程化、高性能數據庫、分布式數據庫、DevOps、微服務架構、服務化測試、多機房架構等方麵,既有業務挑戰分析,也有架構實踐指導,並通過實戰案例加以詮釋。
本書適閤希望采用雲計算幫助企業實現業務提升的 CTO、CIO、架構師等群體。
網易雲基礎服務架構團隊,負責網易雲基礎服務平颱建設,包括計算、網絡、存儲、CDN、數據庫等服務,以及自動化平颱的架構和實踐,該平颱支撐瞭網易內部95%的互聯網産品。團隊在互聯網産品開發和規範化的係統建設上有豐富的經驗,對互聯網業務需求、係統設計、開發、測試、運維和調優等方麵有獨到的經驗和理解。
祝一切順利!
引子 1
第1章 互聯網係統架構的挑戰 2
1.1 雲應用架構技術發展 4
1.2 雲平颱下架構的不同點 5
1.2.1 開發模式的區彆 6
1.2.2 交付模式的區彆 7
1.2.3 架構設計的區彆 8
1.3 雲原生應用架構 10
1.4 架構演化發展曆程 21
1.4.1 初創期架構 22
1.4.2 快速成長期架構 24
1.4.3 分布式服務架構 26
1.5 雲計算服務介紹 29
1.6 雲計算解決方案 31
1.7 案例概述 34
1.7.1 背景介紹 34
1.7.2 環境要求 36
1.7.3 項目構建 36
1.7.4 項目運行 36
1.7.5 相關技術介紹 37
小結 40
第2章 從0到1工程實踐 41
2.1 工程化 41
2.1.1 工程模闆 41
2.1.2 模塊化 45
2.1.3 工程化構建 50
2.1.4 代碼規範及檢查 53
2.1.5 代碼版本管理 54
2.1.6 環境劃分 61
2.2 基於容器工程化 62
2.2.1 Docker及作用 63
2.2.2 Docker鏡像及操作 66
2.2.3 Docker容器及操作 73
2.2.4 基於容器工程化 77
2.3 實戰示例 78
小結 84
第3章 初創期應用架構實踐 85
3.1 技術選型 85
3.1.1 業務框架選型 85
3.1.2 結構化數據存儲 92
3.1.3 緩存選型 102
3.1.4 靜態資源存儲 106
3.2 架構實踐 109
3.2.1 快速迭代 109
3.2.2 高可用與負載均衡 111
3.2.3 交付與部署 117
3.2.4 Web應用安全 119
3.3 應用監控 127
3.3.1 應用監控指標 127
3.3.2 應用進程監控 128
3.3.3 操作係統監控 129
小結 136
第4章 快速成長期應用架構實踐 137
4.1 關鍵業務需求 137
4.1.1 計數與排序 137
4.1.2 秒殺 146
4.1.3 全文檢索 149
4.1.4 日誌收集 154
4.2 架構實踐 156
4.2.1 前端係統擴展 157
4.2.2 無狀態服務設計 157
4.2.3 在綫水平擴展 160
4.2.4 後端係統擴展 163
4.2.5 係統通信 173
4.2.6 消息中間件 176
4.3 係統優化 181
4.3.1 靜態資源分離 182
4.3.2 數據庫調優 185
4.3.3 係統高可用 193
4.4 應用診斷 200
4.4.1 應用健康檢查 200
4.4.2 性能問題診斷 204
4.4.3 基於日誌的故障診斷 210
4.5 數據庫診斷 214
4.6 DevOps 223
4.6.1 持續集成 224
4.6.2 持續交付 227
4.6.3 灰度發布 229
4.6.4 大應用編排 231
4.7 安全設計 246
4.7.1 入侵檢測 247
4.7.2 防劫持攻擊 249
小結 255
第5章 穩定期服務化應用架構實踐 256
5.1 業務拆分 256
5.2 統一配置中心 259
5.3 分布式定時任務 261
5.3.1 分布式定時任務設計 262
5.3.2 業界流行的開源框架 264
5.4 分布式鎖係統 274
5.5 微服務化架構 277
5.5.1 服務發現 279
5.5.2 服務治理 302
5.5.3 微服務框架 307
5.5.4 服務編排 313
5.5.5 微服務測試 321
5.6 分布式數據一緻性 333
5.6.1 CAP和BASE理論 333
5.6.2 一緻性模型 336
5.6.3 典型的解決方案 337
5.7 同城多活 344
5.7.1 應用同城多活 345
5.7.2 跨AZ負載均衡 347
5.8 故障診斷 348
小結 353
參考文獻 354
技術術語 356
曆時三年終到稿,還未讀完初稿,就知道《架構解密:從分布式到微服務》將是一本暢銷書。
作者:(美)Lee Atchison(李 艾奇遜) 譯者:張若飛
Lee Atchison 是New Relic 公司的席雲架構師和布道師。他已經在New Relic 工作瞭4年,負責設計並領導建立瞭New Relic 的基礎設施産品,幫助New Relic 搭建瞭健壯的服務化係統架構,支撐起公司從一個很小的SaaS 創業公司成長為一個高流量的公眾企業。他非常擅長構建高可用的係統。Lee 擁有28 年的行業工作背景,之前在Amazon.com 擔任7 年高級經理的時候,瞭解到如何搭建基於雲的、可伸縮的係統架構。在Amazon,他領導並建立瞭公司個軟件下載商店,搭建瞭AWS Elastic Beanstalk 服務,並帶領團隊將Amazon 的零售平颱從一個單體架構成功遷移到瞭基於服務的架構。
本書譯者的中英文水平都極高,且工作在係統管理的一綫,具有豐富的理論知識和實踐經驗,相信會為讀者帶來一本質量上乘的圖書。
目錄
序. .......................... xv
前言. ......................xvii
第 1章 什麼是可用性... 2
可用性與可靠性 ............................................... 3
什麼導緻瞭低可用性 ....................................... 4
第 2章 提高應用程序可用性的五個要點......................................... 6
要點 1:時刻考慮應對故障 ............................. 7
要點 2:時刻考慮如何伸縮 ............................. 8
要點 3:緩和風險 ............................................ 9
要點 4:監控可用性 ...................................... 10
要點 5:以預測和確定的方式來應對可用性問題 ...................................................... 11
做好準備 ........................................................ 12
第 3章 測量可用性... 13
N個 9 14
什麼樣的可用性是閤理的 ...................... 14
不要上當 ........................................................ 14
通過數字來體現可用性.................................. 15
測試並跟蹤當前的可用性 .............................. 17
將手動流程自動化 ......................................... 17
自動化部署............................................. 18
配置管理 ................................................ 18
更改實驗和高頻次更改 .......................... 19
自動化的變更完備性測試 ...................... 20
改進你的係統 ................................................ 20
不斷變化和發展中的應用程序 ...................... 20
時刻關注可用性 ............................................. 21
第 5章 什麼是風險管理. .......................................................... 24
管理風險 ........................................................ 25
識彆風險 ........................................................ 25
消除嚴重的風險 ......................................... 26
風險緩和 ........................................................ 26
定期檢查 ........................................................ 27
對風險管理的總結 ......................................... 27
第 6章 可能性與嚴重性. .......................................................... 28
10佳列錶:低可能性,低嚴重性 .................. 29
訂單數據庫:低可能性,高嚴重性 ............... 29
自定義字體:高可能性,低嚴重性 ............... 30
T恤圖片:高可能性,高嚴重性 ................... 31
第 7章 風險模型...... 32
風險模型的作用域 ......................................... 34
創建風險模型 ................................................ 34
通過頭腦風暴建立風險列錶 .................. 35
填寫可能性和嚴重性字段 ...................... 36
風險項詳情............................................. 37
觸發計劃 ................................................ 37
使用風險模型來製訂計劃 .............................. 37
維護風險模型 ................................................ 38
第 8章 風險緩和...... 40
恢復計劃 ........................................................ 41
容災計劃 ........................................................ 42
改進我們的風險狀況 ..................................... 43
第 9章 比賽日......... 44
預發布環境和生産環境.................................. 44
在生産環境中舉行比賽日的擔心 ................... 46
比賽日測試 .................................................... 47
第 10章 構建低風險係統......................................................... 48
冗餘 .. 48
冪等接口示例 ................................................ 49
增加瞭復雜性的冗餘改進 .............................. 49
獨立性 ............................................................ 50
安全 .. 51
簡單性 ............................................................ 51
自修復 ............................................................ 52
運維流程 ........................................................ 53
第 11章 為什麼使用服務. ......................................................... 56
單體應用程序 ................................................ 56
基於服務的應用程序 ..................................... 57
所有權收益 .................................................... 58
規模收益 ........................................................ 60
如何定義服務 ................................................ 63
深入瞭解服務 ......................................... 63
指導原則 1:特定的業務需求 ................ 63
指導原則 2:清晰和獨立的團隊所有權 . 64
指導原則 3:天然隔離的數據 ................ 65
指導原則 4:共享的能力 /數據 ............. 67
多種原因 ................................................ 67
過猶不及 ........................................................ 68
適當的平衡 .................................................... 69
第 13章 處理服務故障............................................................ 70
級聯式的服務故障 ......................................... 70
如何響應服務故障 ......................................... 71
可預測的響應 ......................................... 72
可理解的響應 ......................................... 73
閤理的響應............................................. 73
如何確定故障 ................................................ 74
適當的行為 .................................................... 76
優雅降級 ................................................ 76
優雅補償 ................................................ 77
盡早失敗 ................................................ 77
用戶導緻的問題 ..................................... 78
第Ⅳ部分 如何讓應用程序具有伸縮性
第 14章 兩次失誤的高度......................................................... 82
什麼是“兩次失誤的高度” ............................ 83
實踐中的“兩次失誤的高度” ........................ 83
丟失一個節點 ......................................... 83
升級過程中齣現的問題 .......................... 85
數據中心恢復 ......................................... 86
隱蔽的共享故障類型 .............................. 88
管理你的應用程序 ......................................... 90
航天飛機 ........................................................ 90
第 15章 服務所有權.. 92
由獨立團隊負責的服務架構 .......................... 92
STOSA應用程序和組織的好處 ..................... 94
成為一個服務所有者意味著什麼 ................... 94
第 16章 服務分級. .... 97
應用復雜性 .................................................... 97
什麼是服務分級 ............................................. 98
為服務分配服務級彆標簽 .............................. 99
1級服務 ................................................. 99
2級服務 ................................................. 99
3級服務 ............................................... 100
4級服務 ............................................... 100
示例:在綫商店 ........................................... 100
接下來呢 ...................................................... 103
第 17章 使用服務分級.......................................................... 104
期望 104
響應性 .......................................................... 104
依賴 106
關鍵依賴 .............................................. 106
非關鍵依賴........................................... 107
小結 107
第 18章 服務等級協議.......................................................... 108
什麼是服務等級協議 ................................... 108
外部 SLA與內部 SLA的對比 ..................... 110
為什麼內部 SLA很重要 .............................. 110
SLA可以作為一種信任的手段 .....................111
SLA可以用於問題診斷 ................................111
限定 SLA .............................................. 113
排名 SLA .............................................. 113
延遲分組 .............................................. 115
究竟應當定義多少內部 SLA,以及定義哪些內部 SLA ........................................... 116
關於 SLA的其他評價 .................................. 116
第 19章 持續改進. ... 117
定期檢查你的應用程序................................ 117
微服務 .......................................................... 118
服務所有權 .................................................. 118
無狀態服務 .................................................. 118
數據在哪裏 .................................................. 118
數據分區 ...................................................... 119
持續改進的重要性 ....................................... 121
第 20章 變化和雲服務. ..........................................................124
雲服務有哪些變化 ....................................... 124
對基於微服務架構的認可 .................... 124
更小、更專業的服務 ............................ 125
更專注於應用程序 ............................... 125
微型初創公司 ....................................... 125
安全和閤規已經成熟 ............................ 125
變化還在繼續 .............................................. 125
第 21章 雲上的分布.127
AWS的架構 ................................................. 127
AWS區域 ............................................. 127
AWS可用區 ......................................... 128
數據中心 .............................................. 128
總體架構概述 .............................................. 129
第 22章 托管的基礎設施....................................................... 134
基於雲的服務架構 ....................................... 134
原生資源 .............................................. 135
托管資源(基於服務器) ....................... 136
托管資源(不基於服務器) ................... 137
使用托管資源的影響 ................................... 138
使用非托管資源的影響................................ 138
監控和 CloudWatch ...................................... 138
第 23章 雲資源分配. ............................................................ 140
固定額度的資源分配 ................................... 140
調整分配 .............................................. 141
預留容量 .............................................. 142
基於使用量的資源分配................................ 143
基於使用量分配資源的好處 ................ 144
資源分配技術的利與弊................................ 145
第 24章 可伸縮的計算選項.................................................... 146
雲服務器 ...................................................... 147
優點 ...................................................... 147
缺點 ...................................................... 147
適用場景 .............................................. 147
計算分片 ...................................................... 147
優點 ...................................................... 147
缺點 ...................................................... 148
適用場景 .............................................. 148
動態容器 ...................................................... 148
優點 ...................................................... 148
缺點 ...................................................... 149
適用場景 .............................................. 149
微計算 .......................................................... 149
優點 ...................................................... 149
缺點 ...................................................... 150
第 25章 AWS.Lambda....................................................... 151
使用 Lambda ................................................ 151
事件處理 .............................................. 151
手機應用後颱 ....................................... 152
物聯網數據采集 ................................... 153
Lambda的優缺點......................................... 154
第Ⅵ部分 總結
第 26章 融會貫通...156
可用性 .......................................................... 156
風險管理 ...................................................... 157
服務 157
擴展 157
雲服務 .......................................................... 158
麵嚮可伸縮的架構 ....................................... 158
評分
評分
評分
評分
評分
評分
評分
評分
本站所有內容均為互聯網搜尋引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度,google,bing,sogou 等
© 2025 windowsfront.com All Rights Reserved. 靜流書站 版權所有