架構(gòu)基礎(chǔ):從需求到架構(gòu)
定 價(jià):89 元
- 作者:尹洪亮
- 出版時(shí)間:2022/1/1
- ISBN:9787301327210
- 出 版 社:北京大學(xué)出版社
- 中圖法分類:F272.7
- 頁碼:384
- 紙張:
- 版次:1
- 開本:16開
本書根據(jù)各種企業(yè)級(jí)真實(shí)場(chǎng)景總結(jié),提出合理的設(shè)計(jì)思路和解決方案,從需求、問題、解決方案、原理、設(shè)計(jì)方法、落地方案多個(gè)角度,給出架構(gòu)設(shè)計(jì)方法。
本書主要內(nèi)容包括大型互聯(lián)網(wǎng)架構(gòu)設(shè)計(jì)的四大原則、分布式微服務(wù)架構(gòu)設(shè)計(jì)、登錄功能架構(gòu)設(shè)計(jì)、用戶安全架構(gòu)設(shè)計(jì)、系統(tǒng)日志架構(gòu)設(shè)計(jì)、系統(tǒng)攻防架構(gòu)設(shè)計(jì)、系統(tǒng)消息架構(gòu)設(shè)計(jì)、監(jiān)控預(yù)警架構(gòu)設(shè)計(jì)、關(guān)系型大數(shù)據(jù)架構(gòu)設(shè)計(jì)、批處理調(diào)度架構(gòu)設(shè)計(jì)、系統(tǒng)配置架構(gòu)設(shè)計(jì)、企業(yè)級(jí)核心架構(gòu)設(shè)計(jì)實(shí)戰(zhàn)等,詳細(xì)講解了各種場(chǎng)景的架構(gòu)方案。
本書與任何編程語言無關(guān),目的是提升讀者的設(shè)計(jì)思維、培養(yǎng)讀者的設(shè)計(jì)能力、開啟讀者的架構(gòu)思維。同時(shí),本書也是一本設(shè)計(jì)方案指南,開發(fā)人員、設(shè)計(jì)人員、架構(gòu)人員均可參考本書,針對(duì)遇到的場(chǎng)景進(jìn)行參考性設(shè)計(jì)。
尹洪亮,現(xiàn)任某大型互聯(lián)網(wǎng)公司架構(gòu)師,51CTO、CSDN、網(wǎng)易云課堂、騰訊課堂認(rèn)證講師,頭條付費(fèi)專欄作者。
第1章如何規(guī)劃自己的架構(gòu)師職業(yè)生涯
1.1 架構(gòu)師與程序員的區(qū)別
1.2 如何打磨自己的架構(gòu)能力
1.3 架構(gòu)師的 12 項(xiàng)必備技能
1.4 寫給在校的大學(xué)生
1.5 寫給程序員同行
第2章大型互聯(lián)網(wǎng)架構(gòu)設(shè)計(jì)的四大原則
2.1 大型互聯(lián)網(wǎng)架構(gòu)高可用設(shè)計(jì)
2.1.1 高可用指標(biāo)
2.1.2 冗余設(shè)計(jì)
2.1.3 負(fù)載均衡架構(gòu)設(shè)計(jì)
2.1.4 DNS輪詢負(fù)載設(shè)計(jì)
2.1.5 兩地三中心容災(zāi)設(shè)計(jì)
2.1.6 異地多活架構(gòu)設(shè)計(jì)
2.1.7 MongoDB高可用架構(gòu)
2.1.8 Redis高可用架構(gòu)
2.1.9 Kafka高可用架構(gòu)
2.1.10 數(shù)據(jù)庫高可用架構(gòu)
2.1.11 高并發(fā)訪問限流設(shè)計(jì)
2.2 大型互聯(lián)網(wǎng)架構(gòu)高伸縮設(shè)計(jì)
2.2.1 文件存儲(chǔ)伸縮設(shè)計(jì)
2.2.2 數(shù)據(jù)庫伸縮設(shè)計(jì)
2.3 大型互聯(lián)網(wǎng)架構(gòu)高并發(fā)設(shè)計(jì)
2.3.1 多級(jí)緩存策略
2.3.2 異步化策略
2.3.3 讀寫分離策略
2.4 大型互聯(lián)網(wǎng)架構(gòu)安全性設(shè)計(jì)
2.4.1 安全控制的整體性
2.4.2 應(yīng)用系統(tǒng)安全性設(shè)計(jì)
2.4.3 數(shù)據(jù)安全性設(shè)計(jì)
2.5 章節(jié)練習(xí)
2.6 案例設(shè)計(jì)
第3章分布式微服務(wù)架構(gòu)設(shè)計(jì)
3.1 單體架構(gòu)
3.2 SOA架構(gòu)
3.3 微服務(wù)架構(gòu)
3.4 服務(wù)注冊(cè)與發(fā)現(xiàn)
3.5 客戶端負(fù)載均衡
3.6 熔斷機(jī)制
3.7 微服務(wù)網(wǎng)關(guān)
3.7.1 網(wǎng)關(guān)的原理
3.7.2 網(wǎng)關(guān)的功能
3.7.3 微服務(wù)網(wǎng)關(guān)與Nginx對(duì)比
3.7.4 正確的網(wǎng)關(guān)架構(gòu)
3.8 配置中心
3.9 微服務(wù)監(jiān)控
3.10 分布式鏈路追蹤
3.11 大型互聯(lián)網(wǎng)微服務(wù)架構(gòu)
3.12 微服務(wù)改造的六大原則
3.13 章節(jié)練習(xí)
3.14 案例設(shè)計(jì)
第4章登錄功能架構(gòu)設(shè)計(jì)
4.1 登錄設(shè)計(jì)的復(fù)雜性
4.2 多類型賬號(hào)密碼登錄設(shè)計(jì)
4.3 三類驗(yàn)證碼登錄設(shè)計(jì)
4.3.1 手機(jī)驗(yàn)證碼登錄注冊(cè)設(shè)計(jì)
4.3.2 動(dòng)態(tài)令牌登錄設(shè)計(jì)
4.3.3 語音驗(yàn)證碼登錄注冊(cè)設(shè)計(jì)
4.4 本機(jī)號(hào)碼一鍵登錄注冊(cè)設(shè)計(jì)
4.5 人臉/語音/指紋識(shí)別登錄設(shè)計(jì)
4.6 多端登錄設(shè)計(jì)
4.6.1 多端應(yīng)用的開發(fā)模式
4.6.2 多端應(yīng)用的會(huì)話保持
4.7 多設(shè)備登錄設(shè)計(jì)
4.8 集群/分布式架構(gòu)基于Session的登錄設(shè)計(jì)
4.8.1 Session的工作原理
4.8.2 集群/分布式架構(gòu)下的Session設(shè)計(jì)
4.9 企業(yè)級(jí)單點(diǎn)登錄設(shè)計(jì)
4.9.1 認(rèn)識(shí)單點(diǎn)登錄
4.9.2 簡(jiǎn)單綁定單點(diǎn)登錄設(shè)計(jì)
4.9.3 授權(quán)綁定單點(diǎn)登錄設(shè)計(jì)
4.10 OAuth 2.0認(rèn)證授權(quán)設(shè)計(jì)
4.11 用戶掃碼登錄設(shè)計(jì)
4.12 章節(jié)練習(xí)
4.13 案例設(shè)計(jì)
第5章用戶安全架構(gòu)設(shè)計(jì)
5.1 安全設(shè)計(jì)無小事
5.2 主動(dòng)與被動(dòng)登錄踢出設(shè)計(jì)
5.3 5種密碼安全性設(shè)計(jì)
5.3.1 密碼復(fù)雜度設(shè)計(jì)
5.3.2 密碼安全檢查設(shè)計(jì)
5.3.3 密碼失效設(shè)計(jì)
5.3.4 賬戶鎖定設(shè)計(jì)
5.3.5 密碼傳輸和存儲(chǔ)設(shè)計(jì)
5.4 5種密碼找回設(shè)計(jì)
5.5 密碼修改設(shè)計(jì)
5.6 5種用戶注冊(cè)設(shè)計(jì)
5.6.1 開放式注冊(cè)、封閉式注冊(cè)和半封閉式注冊(cè)
5.6.2 手機(jī)驗(yàn)證碼注冊(cè)
5.6.3 郵箱激活注冊(cè)
5.7 RBAC用戶權(quán)限設(shè)計(jì)
5.7.1 RBAC權(quán)限模型
5.7.2 RBAC權(quán)限繼承
5.7.3 RBAC權(quán)限模型演進(jìn)
5.8 互聯(lián)網(wǎng)權(quán)限架構(gòu)設(shè)計(jì)
5.8.1 基于Token的訪問控制
5.8.2 SecretID和SecretKey模式
5.8.3 JWT模式
5.8.4 微服務(wù)模式下的Token權(quán)限設(shè)計(jì)
5.8.5 Token的延時(shí)與刷新
5.9 章節(jié)練習(xí)
5.10 案例設(shè)計(jì)
第6章系統(tǒng)日志架構(gòu)設(shè)計(jì)
6.1 日志的分類和用途
6.2 3種登錄日志設(shè)計(jì)
6.2.1 利用登錄日志進(jìn)行安全檢測(cè)
6.2.2 利用登錄日志刻畫用戶
6.2.3 登錄日志客戶化
6.3 退出日志設(shè)計(jì)
6.4 4種操作軌跡設(shè)計(jì)
6.4.1 菜單操作日志設(shè)計(jì)
6.4.2 功能操作日志設(shè)計(jì)
6.4.3 流程操作日志設(shè)計(jì)
6.4.4 業(yè)務(wù)操作日志設(shè)計(jì)
6.5 接口日志設(shè)計(jì)
6.6 程序日志設(shè)計(jì)
6.7 日志存儲(chǔ)設(shè)計(jì)
6.8 日志收集架構(gòu)
6.8.1 日志收集架構(gòu)的設(shè)計(jì)
6.8.2 Elastic Stack架構(gòu)組件介紹
6.8.3 Elastic Stack架構(gòu)模式
6.9 章節(jié)練習(xí)
6.10 案例設(shè)計(jì)
第7章 系統(tǒng)攻防架構(gòu)設(shè)計(jì)
7.1 系統(tǒng)攻擊的種類和特點(diǎn)
7.2 短信/郵件防攻擊設(shè)計(jì)
7.3 兩種字符圖形驗(yàn)證碼設(shè)計(jì)
7.4 提問式圖片驗(yàn)證碼設(shè)計(jì)
7.5 行為交互驗(yàn)證碼設(shè)計(jì)
7.5.1 拖曳式驗(yàn)證碼
7.5.2 點(diǎn)選式驗(yàn)證碼
7.5.3 行為交互驗(yàn)證碼設(shè)計(jì)流程
7.6 分布式驗(yàn)證碼設(shè)計(jì)
7.7 防接口重放攻擊設(shè)計(jì)
7.8 防暴力窮舉攻擊設(shè)計(jì)
7.9 防篡改攻擊設(shè)計(jì)
7.10 章節(jié)練習(xí)
7.11 案例設(shè)計(jì)
第8章 系統(tǒng)消息架構(gòu)設(shè)計(jì)
8.1 4種短信通知設(shè)計(jì)
8.1.1 實(shí)時(shí)短信通知設(shè)計(jì)
8.1.2 準(zhǔn)實(shí)時(shí)短信通知設(shè)計(jì)
8.1.3 批量短信通知設(shè)計(jì)
8.1.4 定時(shí)短信通知設(shè)計(jì)
8.2 郵件通知設(shè)計(jì)
8.3 站內(nèi)信設(shè)計(jì)
8.4 App消息推送設(shè)計(jì)
8.5 章節(jié)練習(xí)
8.6 案例設(shè)計(jì)
第9章 監(jiān)控預(yù)警架構(gòu)設(shè)計(jì)
9.1 服務(wù)器監(jiān)控設(shè)計(jì)
9.2 業(yè)務(wù)監(jiān)控設(shè)計(jì)
9.3 程序日志監(jiān)控設(shè)計(jì)
9.4 主動(dòng)上報(bào)監(jiān)控設(shè)計(jì)
9.5 被動(dòng)掃描監(jiān)控設(shè)計(jì)
9.6 章節(jié)練習(xí)
9.7 案例設(shè)計(jì)
第10章 關(guān)系型大數(shù)據(jù)架構(gòu)設(shè)計(jì)
10.1 海量數(shù)據(jù)處理的核心思想
10.2 大數(shù)據(jù)查詢?cè)O(shè)計(jì)
10.3 大數(shù)據(jù)導(dǎo)入設(shè)計(jì)
10.4 大數(shù)據(jù)導(dǎo)出設(shè)計(jì)
10.5 章節(jié)練習(xí)
10.6 案例設(shè)計(jì)
第11章 批處理調(diào)度架構(gòu)設(shè)計(jì)
11.1 批處理調(diào)度并不是簡(jiǎn)單的循環(huán)
11.2 單機(jī)批處理架構(gòu)設(shè)計(jì)
11.2.1 調(diào)度與執(zhí)行分離設(shè)計(jì)
11.2.2 串行與并行設(shè)計(jì)
11.3 集群批處理架構(gòu)設(shè)計(jì)
11.4 分布式批處理架構(gòu)設(shè)計(jì)
11.5 流水線批處理架構(gòu)設(shè)計(jì)
11.6 章節(jié)練習(xí)
11.7 案例設(shè)計(jì)
第12章 系統(tǒng)配置架構(gòu)設(shè)計(jì)
12.1 配置存儲(chǔ)和加載策略設(shè)計(jì)
12.2 配置信息多級(jí)緩存設(shè)計(jì)
12.3 分布式架構(gòu)參數(shù)配置設(shè)計(jì)
12.4 字典配置中心設(shè)計(jì)
12.5 SaaS化多租戶多應(yīng)用配置化設(shè)計(jì)
12.6 章節(jié)練習(xí)
12.7 案例設(shè)計(jì)
第13章 企業(yè)級(jí)核心架構(gòu)設(shè)計(jì)實(shí)戰(zhàn)
13.1 阿里云/騰訊云消息系統(tǒng)核心設(shè)計(jì)實(shí)
13.2 支付寶/微信支付系統(tǒng)核心設(shè)計(jì)實(shí)戰(zhàn)
13.3 鷹眼業(yè)務(wù)監(jiān)控系統(tǒng)整體設(shè)計(jì)實(shí)戰(zhàn)
13.4 監(jiān)管批量信息報(bào)送系統(tǒng)核心設(shè)計(jì)實(shí)戰(zhàn)