《高性能架構之道》是電子工業出版社圖書,作者為易哥。是一本理論聯繫實際的軟體架構設計指導書,旨在幫助讀者完成高性能軟體系統的架構設計工作。書中涉及分散式、並發編程、資料庫調優、快取、IO、前端性能最佳化等方面的理論知識,並在理論知識的基礎上推導其實踐技巧。本書最後還運用書中知識完成了一個實際軟體項目的架構設計工作。本書適合軟體架構師、工程師、學生閱讀,以幫助其完善軟體開發知識體系和提升其軟體架構設計能力。
基本介紹
- 中文名:高性能架構之道
- 別名:高性能架構之道:分散式、並發編程、資料庫調優、快取設計、IO模型、前端最佳化、高可用
- 作者:易哥
- 類別:計算機 軟體開發
- 出版社:電子工業出版社
- 出版時間:2021年3月1日
- 頁數:292 頁
- 定價:89 元
- 開本:16 開
- ISBN:9787121404870
內容簡介
圖書目錄
- 推薦序
- 前言
- 第1章 高性能架構
- 1.1 軟體架構
- 1.2 軟體的質量
- 1.3 高性能概述
- 1.4 軟體性能指標
- 1.4.1 吞吐量
- 1.4.2 並發數
- 1.4.3 平均回響時間
- 1.4.4 可靠性指標
- 1.5.1 並發數對吞吐量的影響
- 1.5.2 並發數對平均回響時間的影響
- 1.5.3 平均回響時間對並發數的影響
- 1.5.4 可靠性指標與其他指標的關係
- 2.1 內容分發網路
- 2.1.1 內容分發網路的結構
- 2.1.2 內容分發網路的原理
- 3.1 並行與並發
- 3.2 集群系統
- 3.2.1 無狀態的節點集群
- 3.2.2 單一服務節點集群
- 3.2.3 信息共享的節點集群
- 3.2.4 信息一致的節點集群
- 4.1 多進程
- 4.2 多執行緒
- 4.2.1 執行緒的狀態及轉換
- 4.2.2 多執行緒的套用場景
- 用以提升效率
- 用以實現異步操作
- 繼承Thread類
- 基於Runable接口
- 基於Callable接口
- 記憶體模型
- 禁止並發修改
- 執行緒安全對象
- 執行緒獨享資源
- 總分總式同步
- 柵欄式同步
- 總分總式同步
- 信號量
- 5.1 概念梳理
- 5.1.1 同步與異步
- 5.1.2 阻塞與非阻塞
- 6.1 資料庫設計概述
- 6.2 關係型資料庫設計
- 6.2.1 設計範式介紹
- 第一範式
- 第二範式
- 第三範式
- BCNF
- 第四範式
- 第五範式
- 6.3.1 索引的原理
- Hash索引
- BTree索引
- 點陣圖索引
- 計算與類型轉化引發的索引失效
- 聯合索引的失效
- 模糊匹配引發的索引失效
- 其他索引失效場景
- 6.5.1 樂觀鎖
- 6.5.2 悲觀鎖
- 6.7.1 事務並發導致的問題
- 髒讀
- 不可重複讀
- 幻讀
- 讀未提交
- 讀已提交
- 可重複讀
- 串列化
- 隔離級別總結
- 6.8.1 表分區
- 6.8.2 分庫分表
- 6.8.3 讀寫分離
- 主從複製的實現方案
- 主從複製的延遲問題
- 6.9.1 記憶體資料庫
- 6.9.2 列存儲資料庫
- 6.9.3 面向對象資料庫
- 6.9.4 文檔資料庫
- 6.9.5 圖資料庫
- 7.1 快取的收益
- 7.2 快取的鍵與值
- 7.2.1 快取的鍵
- 7.2.2 快取的值
- 7.3.1 時效性更新機制
- 7.3.2 主動更新機制
- Cache Aside機制
- Read/Write Through機制
- Write Behind機制
- 7.4.1 時效式清理
- 7.4.2 數目閾值式清理
- FIFO
- LRU
- 開發實踐
- 7.5.1 快取穿透
- 7.5.2 快取雪崩
- 7.5.3 快取擊穿
- 7.5.4 快取預熱
- 7.6.1 客戶端快取
- 7.6.2 靜態快取
- 7.6.3 服務快取
- 7.6.4 資料庫快取
- 7.7.1 寫快取的收益
- 7.7.2 寫快取實踐
- 8.1 軟體可靠性概述
- 8.2 軟體可靠性指標
- 8.2.1 失效機率
- 8.2.2 失效強度
- 8.2.3 失效率
- 8.3.1 串聯繫統的可靠性
- 8.3.2 並聯繫統的可靠性
- 8.3.3 冗餘系統的可靠性
- 8.3.4 模組連線方式的可靠性討論
- 8.5.1 消除單點依賴
- 8.5.2 化串聯為並聯
- 8.5.3 採用集群
- 9.1 套用保護概述
- 9.2 隔離
- 9.3 限流
- 9.3.1 時間窗限流法
- 9.3.2 漏桶限流法
- 9.3.3 令牌限流法
- 10.1 前端工作分析
- 10.1.1 前端載入過程
- 10.1.2 前端性能分析
- 10.2.1 資源壓縮
- 10.2.2 減少請求
- 資源合併
- 長連線長輪詢與推送
- 10.3.1 順應解析流程
- 10.3.2 套用新型前端框架
- 11.1 軟體架構風格
- 11.1.1 管道過濾器架構風格
- 11.1.2 面向對象架構風格
- 11.1.3 基於組件的架構風格
- 11.1.4 事件驅動架構風格
- 11.1.5 分層架構風格
- 11.1.6 C/S架構風格
- 11.1.7 三層C/S架構風格
- 11.1.8 B/S架構風格
- 11.2.1 需求階段
- 11.2.2 模型設計
- 11.2.3 概要設計
- 11.2.4 詳細設計
- 11.2.5 質量指標設計
- 11.2.6 方案預研
- 11.2.7 軟體開發
- 12.1 需求概述
- 12.2 許可權系統的相關理論
- 12.2.1 許可權模型
- 訪問矩陣
- 基於角色的訪問控制
- 兩種許可權模型之間的關係
- 12.3.1 模型調研
- 12.3.2 模型套用
- 用戶、角色、許可權的處理
- “用戶-角色”關係
- “角色-許可權”關係
- RBAC各要素實現整理
- 控制方式設計
- 12.5.1 RBAC數據表的範式設計
- 12.5.2 RBAC數據表的反範式設計
- 12.5.3 RBAC數據表的最終設計
- 12.5.3 MatrixAuth管理類數據表設計
- 12.5.4 MatrixAuth的數據層結構
- 12.7.1 數據源動態切換
- 12.7.2 數據冗餘的一致性保證
- 12.7.3 服務端的操作接口
- 12.8.1 可控角色的許可權驗證
- 12.8.2 自由角色的許可權驗證
- 12.8.3 用戶信息、角色關聯信息推送
- 數據層(含快取)
- 服務端
- 客戶端
- 數據源配置
- MatrixAuthServer配置
- MatrixAuthClient配置
- 鑒權操作