会员   密码 您忘记密码了吗?
1,572,099 本书已上架      购物流程 | 常见问题 | 联系我们 | 关于我们 | 用户协议

有店 App


当前分类

商品分类

浏览历史

当前位置: 首页 > 简体书 > 高性能架構之道:分布式、併發編程、數據庫調優、緩存設計、IO模型、前端優化、高可用
高性能架構之道:分布式、併發編程、數據庫調優、緩存設計、IO模型、前端優化、高可用
上一张
下一张
prev next

高性能架構之道:分布式、併發編程、數據庫調優、緩存設計、IO模型、前端優化、高可用

作者: 易哥
出版社: 電子工業出版社
出版日期: 2021-03-01
商品库存: 点击查询库存
以上库存为海外库存属流动性。
可选择“空运”或“海运”配送,空运费每件商品是RM14。
配送时间:空运约8~12个工作天,海运约30个工作天。
(以上预计配送时间不包括出版社库存不足需调货及尚未出版的新品)
定价:   NT534.00
市场价格: RM96.00
本店售价: RM85.44
促销价: RM84.48
剩余时间: 请稍等, 正在载入中...
购买数量:
collect Add to cart Add booking
详细介绍 商品属性 商品标记
內容簡介

本書是一本理論聯繫實際的軟體架構設計指導書,旨在説明讀者完成高性能軟體系統的架構設計工作。書中涉及分散式、併發編程、數據庫調優、緩存、IO、前端性能優化等方面的理論知識,並在理論知識的基礎上推導其實踐技巧。本書最後還運用書中知識完成了一個實際軟體專案的架構設計工作。本書適合軟體架構師、工程師、學生閱讀,以幫助其完善軟體發展知識體系和提升其軟體架構設計能力。


作者介紹

易哥(筆名)

畢業于浙江大學、山東大學,高級軟體系統架構師、網路工程師、數據庫工程師、軟件測試工程師、註冊電氣工程師。在校成績前1%,獲得國家獎學金兩次,一等獎學金四次,科技創新大賽一等獎三次,以及五四青年科學獎等。主要科研方向為機器學習、分散式演算法、容錯算法在無線傳感網路中的應用,相關論文獲得IEEE通信協會最佳論文獎。曾擔任網站技術部門負責人,具有豐富的互聯網開發經驗。先後設計和實現了眾多系統和平臺,也是活躍的開源開發者。現專注軟體系統架構設計與後端開發,著有書籍《通用源碼閱讀指導書》《高性能架構之道》等。


目錄

第1章 高性能架構 001
1.1 軟體架構 001
1.2 軟體的品質 003
1.3 高性能概述 004
1.4 軟體性能指標 005
1.4.1 輸送量 006
1.4.2 併發數 006
1.4.3 平均回應時間 007
1.4.4 可靠性指標 008
1.5 性能指標之間的關係 009
1.5.1 併發數對輸送量的影響 009
1.5.2 併發數對平均回應時間的影響 011
1.5.3 平均回應時間對併發數的影響 012
1.5.4 可靠性指標與其他指標的關係 013
1.6 高性能架構總結 013

第2章 分流設計 014
2.1 內容分發網路 014
2.1.1 內容分發網路的結構 015
2.1.2 內容分發網路的原理 017
2.2 多地址直連 019
2.3 反向代理 021

第3章 服務並行設計 026
3.1 並行與併發 026
3.2 集群系統 028
3.2.1 無狀態的節點集群 028
3.2.2 單一服務節點集群 029
3.2.3 信息共用的節點集群 031
3.2.4 信息一致的節點集群 032
3.3 分散式系統 034
3.4 微服務系統 036

第4章 運算併發 038
4.1 多進程 038
4.2 多執行緒 039
4.2.1 執行緒的狀態及轉換 039
4.2.2 多執行緒的應用場景 041
4.2.3 多執行緒的創建 042
4.2.4 執行緒池 046
4.2.5 多執行緒資源協作 050
4.2.6 多執行緒進度協作 056
4.3 多協程 069
4.4 運算併發總結 072

第5章 輸入輸出設計 074
5.1 概念梳理 074
5.1.1 同步與非同步 074
5.1.2 阻塞與非阻塞 075
5.2 IO模型 077
5.3 IO模型的層級關係 078
5.4 阻塞式IO模型 079
5.5 非阻塞式IO模型 081
5.6 信號驅動式IO模型 082
5.7 複用式IO模型 083
5.8 非同步式IO模型 086
5.9 輸入輸出模型總結 088

第6章 數據庫設計與優化 090
6.1 數據庫設計概述 090
6.2 關聯式數據庫設計 091
6.2.1 設計範式介紹 093
6.2.2 反範式設計 101
6.3 索引原理與優化 102
6.3.1 索引的原理 103
6.3.2 索引生效分析 107
6.3.3 索引的使用 109
6.3.4 索引的利弊 116
6.4 數據庫引擎 116
6.5 數據庫鎖 117
6.5.1 樂觀鎖 118
6.5.2 悲觀鎖 119
6.6 鎖死 120
6.7 事務 122
6.7.1 事務併發導致的問題 123
6.7.2 事務隔離級別 124
6.7.3 自建事務 126
6.8 巨量數據的優化 128
6.8.1 表分區 128
6.8.2 分庫分表 132
6.8.3 讀寫分離 134
6.9 非傳統數據庫 138
6.9.1 記憶體數據庫 139
6.9.2 列存儲數據庫 140
6.9.3 物件導向數據庫 140
6.9.4 文檔數據庫 140
6.9.5 圖數據庫 141
6.10 數據庫中介軟體 141

第7章 緩存設計 143
7.1 緩存的收益 143
7.2 緩存的鍵與值 145
7.2.1 緩存的鍵 145
7.2.2 緩存的值 149
7.3 緩存的最新機制 151
7.3.1 時效性最新機制 151
7.3.2 主動最新機制 152
7.4 緩存的清理機制 155
7.4.1 時效式清理 156
7.4.2 數目閾值式清理 157
7.4.3 非強引用式清理 161
7.4.4 清理策略使用實踐 164
7.5 緩存的風險點 165
7.5.1 緩存穿透 165
7.5.2 緩存雪崩 166
7.5.3 緩存擊穿 166
7.5.4 緩存預熱 167
7.6 緩存的位置 168
7.6.1 用戶端緩存 169
7.6.2 靜態緩存 172
7.6.3 服務緩存 173
7.6.4 數據庫緩存 173
7.7 寫緩存 174
7.7.1 寫緩存的收益問題 175
7.7.2 寫緩存實踐 175

第8章 可靠性設計 177
8.1 軟體可靠性概述 177
8.2 軟體可靠性指標 178
8.2.1 失效概率 178
8.2.2 失效強度 179
8.2.3 失效率 179
8.3 模組連接方式與可靠性 179
8.3.1 串聯系統的可靠性 179
8.3.2 並聯系統的可靠性 180
8.3.3 冗餘系統的可靠性 180
8.3.4 模組連接方式的可靠性討論 181
8.4 軟體失效模型 181
8.5 可靠性設計 182
8.5.1 消除單點依賴 183
8.5.2 化串聯為並聯 183
8.5.3 採用集群 184

第9章 應用保護 185
9.1 應用保護概述 185
9.2 隔離 187
9.3 限流 189
9.3.1 時間窗限流法 189
9.3.2 漏桶限流法 190
9.3.3 權杖限流法 192
9.4 降級 193
9.5 熔斷 196
9.6 恢復 198

第10章 前端高性能 200
10.1 前端工作分析 200
10.1.1 前端載入過程 200
10.1.2 前端性能分析 201
10.2 資源下載優化 203
10.2.1 資源壓縮 203
10.2.2 減少請求 205
10.2.3 資源緩存 210
10.3 頁面解析優化 214
10.3.1 順應解析流程 214
10.3.2 應用新型前端框架 216
10.4 懶載入 216
10.5 預操作 217

第11章 架構設計理論 219
11.1 軟體架構風格 219
11.1.1 管道篩檢程式架構風格 220
11.1.2 物件導向架構風格 220
11.1.3 基於組件的架構風格 221
11.1.4 事件驅動架構風格 221
11.1.5 分層架構風格 221
11.1.6 C/S架構風格 222
11.1.7 三層C/S架構風格 223
11.1.8 B/S架構風格 224
11.2 軟體生命週期 225
11.2.1 需求階段 226
11.2.2 模型設計 227
11.2.3 概要設計 228
11.2.4 詳細設計 228
11.2.5 品質指標設計 229
11.2.6 方案預研 229
11.2.7 軟體發展 229

第12章 高性能架構實踐 231
12.1 需求概述 231
12.2 許可權系統的相關理論 234
12.2.1 許可權模型 234
12.2.2 存取控制方式 240
12.3 模型設計 241
12.3.1 模型調研 241
12.3.2 模型應用 242
12.4 概要設計 249
12.5 數據層詳細設計 253
12.5.1 RBAC數據表的範式設計 253
12.5.2 RBAC數據表的反範式設計 254
12.5.3 RBAC數據表的最終設計 255
12.5.4 MatrixAuth管理類數據表設計 257
12.5.5 MatrixAuth的數據層結構 259
12.6 緩存詳細設計 260
12.7 服務端詳細設計 261
12.7.1 數據源動態切換 261
12.7.2 數據冗餘的一致性保證 263
12.7.3 服務端的操作介面 263
12.8 客戶端詳細設計 265
12.8.1 可控角色的許可權驗證 265
12.8.2 自由角色的許可權驗證 267
12.8.3 使用者信息、角色關聯信息推送 268
12.9 MatrixAuth項目實踐總結 268
12.9.1 MatrixAuth的高性能設計 268
12.9.2 需求完成度分析 270
12.9.3 MatrixAuth的使用簡介 270

參考文獻 273