架構(gòu)師
其他
高可用架構(gòu)
組織
分布式
金融
企業(yè)級
推薦課程
average > 0 ? $model->average . '分' : '10.0分' ?>

大型互聯(lián)網(wǎng)-分布式架構(gòu)方法論與實戰(zhàn)

哈瑞

一線互聯(lián)網(wǎng)行業(yè) 高級架構(gòu)師

?現(xiàn)任BAT公司某技術(shù)中心高級架構(gòu)師;曾在美團點評、唯品會工作,從事廣告平臺、電商平臺相關(guān)的架構(gòu)設(shè)計與團隊管理工作。
?中科院軟件研究所計算機專業(yè)碩士畢業(yè),出版過2本著作:
?在高并發(fā)高可用架構(gòu),業(yè)務建模,DDD領(lǐng)域,積累了10年工作經(jīng)驗,經(jīng)歷過游戲,社交,廣告,電商等各種類型的項目先后出版兩本書籍。曾任上海交大繼續(xù)教育學院兼職講師,教授Java與數(shù)據(jù)結(jié)構(gòu)基礎(chǔ),網(wǎng)絡與Web,曾任美團點評的校招面試官,搜索與推薦平臺,電商運營平臺,電商商品,庫存體系 ,廣告平臺,數(shù)據(jù)中臺。

服務過的企業(yè):
廣州賽意
深圳創(chuàng)維-RGB電子
招聯(lián)消費金融
中移
酷開
銀聯(lián)

?現(xiàn)任BAT公司某技術(shù)中心高級架構(gòu)師;曾在美團點評、唯品會工作,從事廣告平臺、電商平臺相關(guān)的架構(gòu)設(shè)計與團隊管理工作。 ?中科院軟件研究所計算機專業(yè)碩士畢業(yè),出版過2本著作: ?在高并發(fā)高可用架構(gòu),業(yè)務建模,DDD領(lǐng)域,積累了10年工作經(jīng)驗,經(jīng)歷過游戲,社交,廣告,電商等各種類型的項目先后出版兩本書籍。曾任上海交大繼續(xù)教育學院兼職講師,教授Java與數(shù)據(jù)結(jié)構(gòu)基礎(chǔ),網(wǎng)絡與Web,曾任美團點評的校招面試官,搜索與推薦平臺,電商運營平臺,電商商品,庫存體系 ,廣告平臺,數(shù)據(jù)中臺。 服務過的企業(yè): 廣州賽意 深圳創(chuàng)維-RGB電子 招聯(lián)消費金融 中移 酷開 銀聯(lián)

課程費用

6800.00 /人

課程時長

2

成為教練

課程簡介

通過4天深度研習,系統(tǒng)解析高并發(fā)(秒殺系統(tǒng)庫存優(yōu)化)、分布式事務(TCC/Saga混合方案)、高可用(Paxos/Raft工程實踐)及跨城容災(國標GB/T 20988落地)四大核心模塊,涵蓋微信紅包、招行支付等20+金融級實戰(zhàn)案例。課程獨創(chuàng)“技術(shù)-業(yè)務-組織”三角模型,揭示康威定律在架構(gòu)演進中的關(guān)鍵作用,傳授從標準化建設(shè)到混沌工程的全鏈路穩(wěn)定性保障體系。學員將掌握分庫分表深度調(diào)優(yōu)、全鏈路壓測實施、故障根因定位等硬核技能,獲得余老師親著的《億級系統(tǒng)架構(gòu)演進路線圖》及企業(yè)級容災方案模板,助力快速突破技術(shù)瓶頸,打造符合金融信創(chuàng)要求的高可用架構(gòu)。

目標收益

1、學會分布式領(lǐng)域- 高可用的方法論與實踐經(jīng)驗
2、學會分布式領(lǐng)域 - 分布式事務的方法論與實踐經(jīng)驗
3、學會常用架構(gòu)模式
4、學會跨城容災與異地多活的典型思路與策略

培訓對象

適合3年以上后端開發(fā)/架構(gòu)師,技術(shù)負責人參訓。

課程大綱

0、序言:課程脈絡、
技術(shù)理念與價值觀
1. 大型互聯(lián)網(wǎng)架構(gòu)演進史
2. 架構(gòu)的3角關(guān)系:
技術(shù)架構(gòu)、業(yè)務架構(gòu)、組織架構(gòu)
3. 技術(shù)架構(gòu) - 互聯(lián)網(wǎng)的4高的區(qū)別與聯(lián)系:高并發(fā)、高可用、高性能、高可靠
4. 業(yè)務架構(gòu) - 業(yè)務建模、DDD與微服務拆分
5. 組織架構(gòu) - 技術(shù)委員會/架構(gòu)委員會的作用、康威定律
6.架構(gòu)的術(shù)與道:什么是“術(shù)”?什么是“道”?道與術(shù)的關(guān)系?
7. 架構(gòu)與公司規(guī)模/公司發(fā)展階段的匹配度
小公司(幾十/百)、中型公司(千)、
大公司(萬)
8. 技術(shù)的標準化:從“游擊隊”到“正規(guī)軍”,從“小作坊”到“現(xiàn)代化工廠”
9. 技術(shù)深度與廣度的平衡問題
10. T字型發(fā)展
第1天 - 高并發(fā) 、分布式事務、 高可用
第1單元 高并發(fā)
1. 高并發(fā) 和 高性能的本質(zhì)區(qū)別?
2. 高并發(fā)問題本質(zhì):全鏈路水平擴展
3. 高并發(fā)“讀”的典型場景與對應解決方案:緩存、并發(fā)讀、讀寫分離(重寫輕讀)
4. 重點問題: 中央緩存與本地緩存的方案對比
(典型案例:大型電商平臺-庫存系統(tǒng))
5. 高并發(fā)“寫”的典型場景與對應解決方案:數(shù)據(jù)分片,任務分片,異步,批量,串行化
(典型案例:秒殺系統(tǒng)、廣告計費系統(tǒng))
6. 專題:DB分庫分表的各種衍生問題解決,
非主鍵查詢、
跨庫Join、
排序分頁、分布式事務
第2單元 分布式事務 1.日常工作中所有分布式事務場景:
(1)DB與DB的分布式事務
(2)DB與MQ的分布式事務
(3)DB與 緩存的分布式事務
(4)DB與服務的分布式事務
(4)服務與服務的分布式事務
2. 分布式事務解決方案對比與分析:
(1)最終一致性的2種實現(xiàn)方案
(2)2PC與XA
2PC算法的詳細工程實現(xiàn)(XA協(xié)議)
(3)TCC
(4)1PC - 事務補償與對賬
(5)Saga
(典型案例:訂單系統(tǒng)、微信紅包系統(tǒng))
3. 融會貫通:TCC/Saga/1PC的融合案例
4. 專題-分布式事務典型案例剖析:電商平臺庫存系統(tǒng)
第3單元 高可用 0. 高可靠 與 高可用有什么區(qū)別?
1. 高可用問題的引入
2. 高可用問題的思維框架-經(jīng)典5問
(1)如何實現(xiàn)故障探測?
(2)如何避免腦裂?
(3)如何對客戶端透明?
(4)如何保證數(shù)據(jù)一致性?
(5)如何破解單點依賴的連環(huán)套?
3. 常用的幾個系統(tǒng)是如何解決高可用問題:Mysql/Kafka都分別是如何解決高可用的?
4. 高可用的副產(chǎn)品:Paxos/Raft
(1) 多副本一致性問題剖析
Kafka/Mysql中數(shù)據(jù)不一致問題剖析
(2) Paxos/Raft算法引入
(3)常用的Paxos/Raft的工程實現(xiàn)
Paxos/Raft算法的工程應用
第2天 – 高可靠(穩(wěn)定性) 與 高性能
1. 從分布式鎖到CAP理論
1. 為什么需要分布式鎖?
Mysql/Redis中的數(shù)據(jù)并發(fā)更新問題:
悲觀鎖/樂觀鎖
2. 實現(xiàn)一個分布式鎖有哪些坑?
3. RedLock剖析:實現(xiàn)一個“完美”的分布式鎖到底有多難?
4. CAP理論的引入
5. 分布式鎖的替代方案 – 串行化
6. 串行化的典型案例
第2單元 高可靠
(穩(wěn)定性)
1.故障隔離
2. 容量規(guī)劃與全鏈路壓測
(1)容量規(guī)劃的基本思路
(2)壓測的實現(xiàn)思路:單機壓測、全鏈路壓測
3. 依賴下游/組件的可靠性評估
4. 異常處理機制
5. 完善的監(jiān)控、告警與日志體系
6. 限流與防刷:各種手段分析
RateLimiter、微服務框架內(nèi)置、基于隊列的限流
7. 熔斷與降級:各種手段分析
Sentinel、Hystrix
各種降級的場景舉例
8. 超時與重試
9. 灰度發(fā)布與回滾
10. 數(shù)據(jù)備份與兜底
第3單元 高性能 1. 性能優(yōu)化的目標設(shè)置:過早優(yōu)化是萬惡之源
2. 性能測試工具與方法:
應用測試、DB測試、網(wǎng)絡測試、磁盤測試、全鏈路測試
3. 監(jiān)控系統(tǒng)構(gòu)建與指標采集:
微服務、JVM、DB、Redis、操作系統(tǒng)等各種指標采集
4. 應用系統(tǒng)常見的各項指標理解:
QPS,響應時間,并發(fā)數(shù),在線用戶數(shù),絕對并發(fā)數(shù),相對并發(fā)數(shù)
5. 操作系統(tǒng)常見的各項指標理解:
CPU平均負載、使用率、磁盤IOPS、磁盤吞吐量...
6. 性能探索,找出性能瓶頸與根源
(1)工程常識:常用的性能數(shù)字
(2)黑盒分析法
(3)白盒分析法
7. 實施性能優(yōu)化技術(shù):
CPU優(yōu)化
磁盤優(yōu)化
網(wǎng)絡優(yōu)化
內(nèi)存優(yōu)化
第3天 - 高可靠(穩(wěn)定性) - 進階
1. 穩(wěn)定性保障體系:
整體方法論
1.從軟件的整個生命周期來看,為什么會出問題?
2.穩(wěn)定性保障原則之一:事前預防 > 事后補救
3.穩(wěn)定性保障原則之二:及時止損
4.穩(wěn)定性保障:問題分析方法
5.BCP梳理方法論:穩(wěn)定性的3個問題源,上游、自身、下游
2.專題 – 可觀測性 1.監(jiān)控的整體方法論
2.微服務可觀測性:Trace
3.微服務可觀測性:Log
4.微服務可觀測性:Metrics
3.專題 – 業(yè)務監(jiān)控與數(shù)據(jù)監(jiān)控 1.業(yè)務監(jiān)控案例1 – 混淆業(yè)務監(jiān)控與系統(tǒng)監(jiān)控
2.業(yè)務監(jiān)控案例2 – 混淆業(yè)務監(jiān)控與業(yè)務報表
3.業(yè)務監(jiān)控案例3 – 全鏈路業(yè)務追蹤
4.業(yè)務監(jiān)控案例4 – 數(shù)據(jù)監(jiān)控
5.數(shù)據(jù)監(jiān)控的分析方法 – 7種不同的異常模式
4.如何從“測試”上避免出問題 1.功能測試
2.壓力測試/性能測試
3.混沌工程
5.如何從“發(fā)布與變更管理”上避免出問題 1.變更的三板斧
2.代碼的灰度發(fā)布
3.配置的灰度發(fā)布
4.數(shù)據(jù)的灰度發(fā)布
5.線上環(huán)境的模擬仿真
6. 應急處理 1. 應急的值班制度
2. 發(fā)現(xiàn)問題的手段
3. 應急的各種手段
4. 應急預案
7.問題排查與根因定位 1. 問題排查的前提條件
2. 問題排查的分類
3. 問題排查的基本思維
8. 業(yè)務邏輯問題排查 1. 自身的業(yè)務邏輯問題
2. 上游的業(yè)務邏輯問題
3. 下游的業(yè)務邏輯問題
9.技術(shù)問題排查 1. CPU飆高 – 排查技巧與解決
2. 內(nèi)存泄漏 – 排查技巧與解決
3. GC頻繁 – 排查技巧與解決
4. 其它種類問題
5. 問題排查的其他建議
6. 事故復盤機制
第4天 - 高階內(nèi)容 - 跨城容災與異地多活
第一單元 容災標準與原則
1.1信息系統(tǒng)容災國標 GB/T 20988-2007
1.2金融行業(yè)信息系統(tǒng)容災標準
1.3 常用業(yè)務場景的容災要求
(1)信息提供類:比如搜索/推薦,電商商品查詢系統(tǒng)
(2)消息通信類:比如IM
(3)信息更新類:比如商品庫存系統(tǒng)
(4)資金類:金融、支付
1.4 原則
(1)不要追求完美
(2)方案的循序漸進 – 演進路線圖
(3)覆蓋業(yè)務的循序漸進 – 業(yè)務分級、數(shù)據(jù)分級
(4) 技術(shù)約束:物理約束、基礎(chǔ)架構(gòu)約束(DB復制技術(shù)、KV復制技術(shù)、跨城消息中間件)
(5) 根據(jù)業(yè)務場景選擇合適的數(shù)據(jù)復制模式:復制模式、分片模式、自治模式的選型
(6) 成本、業(yè)務價值、團隊能力、風險的權(quán)衡
第二單元 跨城容災對基礎(chǔ)架構(gòu)的要求 (1) 廣義網(wǎng)負載均衡: DNS與GSLB
(2) 局域網(wǎng)負載均衡: F5, TGW/MGW/VGW
(3) API網(wǎng)關(guān)(Nginx/Apache/自研等)
(4) 微服務框架支持
(5) Mysql/KV/MQ跨城能力
第三單元 跨城容災的方法論 第三單元 跨城容災的方法論 3.1 數(shù)據(jù)一致性保證
3.2 可靠切換
3.3 切換演習 & 容災演習
1. FMEA風險分析方法
2.方案設(shè)計
3.實施、記錄
4.復盤
5.常態(tài)化
3.4全鏈路統(tǒng)籌協(xié)調(diào)能力:開發(fā)、運維、測試、業(yè)務的4方協(xié)同問題
3.5 成本權(quán)衡
第四單元 典型案例剖析 案例介紹
0、序言:課程脈絡、
技術(shù)理念與價值觀
1. 大型互聯(lián)網(wǎng)架構(gòu)演進史
2. 架構(gòu)的3角關(guān)系:
技術(shù)架構(gòu)、業(yè)務架構(gòu)、組織架構(gòu)
3. 技術(shù)架構(gòu) - 互聯(lián)網(wǎng)的4高的區(qū)別與聯(lián)系:高并發(fā)、高可用、高性能、高可靠
4. 業(yè)務架構(gòu) - 業(yè)務建模、DDD與微服務拆分
5. 組織架構(gòu) - 技術(shù)委員會/架構(gòu)委員會的作用、康威定律
6.架構(gòu)的術(shù)與道:什么是“術(shù)”?什么是“道”?道與術(shù)的關(guān)系?
7. 架構(gòu)與公司規(guī)模/公司發(fā)展階段的匹配度
小公司(幾十/百)、中型公司(千)、
大公司(萬)
8. 技術(shù)的標準化:從“游擊隊”到“正規(guī)軍”,從“小作坊”到“現(xiàn)代化工廠”
9. 技術(shù)深度與廣度的平衡問題
10. T字型發(fā)展
第1天 - 高并發(fā) 、分布式事務、 高可用
第1單元 高并發(fā)
1. 高并發(fā) 和 高性能的本質(zhì)區(qū)別?
2. 高并發(fā)問題本質(zhì):全鏈路水平擴展
3. 高并發(fā)“讀”的典型場景與對應解決方案:緩存、并發(fā)讀、讀寫分離(重寫輕讀)
4. 重點問題: 中央緩存與本地緩存的方案對比
(典型案例:大型電商平臺-庫存系統(tǒng))
5. 高并發(fā)“寫”的典型場景與對應解決方案:數(shù)據(jù)分片,任務分片,異步,批量,串行化
(典型案例:秒殺系統(tǒng)、廣告計費系統(tǒng))
6. 專題:DB分庫分表的各種衍生問題解決,
非主鍵查詢、
跨庫Join、
排序分頁、分布式事務
第2單元 分布式事務
1.日常工作中所有分布式事務場景:
(1)DB與DB的分布式事務
(2)DB與MQ的分布式事務
(3)DB與 緩存的分布式事務
(4)DB與服務的分布式事務
(4)服務與服務的分布式事務
2. 分布式事務解決方案對比與分析:
(1)最終一致性的2種實現(xiàn)方案
(2)2PC與XA
2PC算法的詳細工程實現(xiàn)(XA協(xié)議)
(3)TCC
(4)1PC - 事務補償與對賬
(5)Saga
(典型案例:訂單系統(tǒng)、微信紅包系統(tǒng))
3. 融會貫通:TCC/Saga/1PC的融合案例
4. 專題-分布式事務典型案例剖析:電商平臺庫存系統(tǒng)
第3單元 高可用
0. 高可靠 與 高可用有什么區(qū)別?
1. 高可用問題的引入
2. 高可用問題的思維框架-經(jīng)典5問
(1)如何實現(xiàn)故障探測?
(2)如何避免腦裂?
(3)如何對客戶端透明?
(4)如何保證數(shù)據(jù)一致性?
(5)如何破解單點依賴的連環(huán)套?
3. 常用的幾個系統(tǒng)是如何解決高可用問題:Mysql/Kafka都分別是如何解決高可用的?
4. 高可用的副產(chǎn)品:Paxos/Raft
(1) 多副本一致性問題剖析
Kafka/Mysql中數(shù)據(jù)不一致問題剖析
(2) Paxos/Raft算法引入
(3)常用的Paxos/Raft的工程實現(xiàn)
Paxos/Raft算法的工程應用
第2天 – 高可靠(穩(wěn)定性) 與 高性能
1. 從分布式鎖到CAP理論
1. 為什么需要分布式鎖?
Mysql/Redis中的數(shù)據(jù)并發(fā)更新問題:
悲觀鎖/樂觀鎖
2. 實現(xiàn)一個分布式鎖有哪些坑?
3. RedLock剖析:實現(xiàn)一個“完美”的分布式鎖到底有多難?
4. CAP理論的引入
5. 分布式鎖的替代方案 – 串行化
6. 串行化的典型案例
第2單元 高可靠
(穩(wěn)定性)
1.故障隔離
2. 容量規(guī)劃與全鏈路壓測
(1)容量規(guī)劃的基本思路
(2)壓測的實現(xiàn)思路:單機壓測、全鏈路壓測
3. 依賴下游/組件的可靠性評估
4. 異常處理機制
5. 完善的監(jiān)控、告警與日志體系
6. 限流與防刷:各種手段分析
RateLimiter、微服務框架內(nèi)置、基于隊列的限流
7. 熔斷與降級:各種手段分析
Sentinel、Hystrix
各種降級的場景舉例
8. 超時與重試
9. 灰度發(fā)布與回滾
10. 數(shù)據(jù)備份與兜底
第3單元 高性能
1. 性能優(yōu)化的目標設(shè)置:過早優(yōu)化是萬惡之源
2. 性能測試工具與方法:
應用測試、DB測試、網(wǎng)絡測試、磁盤測試、全鏈路測試
3. 監(jiān)控系統(tǒng)構(gòu)建與指標采集:
微服務、JVM、DB、Redis、操作系統(tǒng)等各種指標采集
4. 應用系統(tǒng)常見的各項指標理解:
QPS,響應時間,并發(fā)數(shù),在線用戶數(shù),絕對并發(fā)數(shù),相對并發(fā)數(shù)
5. 操作系統(tǒng)常見的各項指標理解:
CPU平均負載、使用率、磁盤IOPS、磁盤吞吐量...
6. 性能探索,找出性能瓶頸與根源
(1)工程常識:常用的性能數(shù)字
(2)黑盒分析法
(3)白盒分析法
7. 實施性能優(yōu)化技術(shù):
CPU優(yōu)化
磁盤優(yōu)化
網(wǎng)絡優(yōu)化
內(nèi)存優(yōu)化
第3天 - 高可靠(穩(wěn)定性) - 進階
1. 穩(wěn)定性保障體系:
整體方法論
1.從軟件的整個生命周期來看,為什么會出問題?
2.穩(wěn)定性保障原則之一:事前預防 > 事后補救
3.穩(wěn)定性保障原則之二:及時止損
4.穩(wěn)定性保障:問題分析方法
5.BCP梳理方法論:穩(wěn)定性的3個問題源,上游、自身、下游
2.專題 – 可觀測性
1.監(jiān)控的整體方法論
2.微服務可觀測性:Trace
3.微服務可觀測性:Log
4.微服務可觀測性:Metrics
3.專題 – 業(yè)務監(jiān)控與數(shù)據(jù)監(jiān)控
1.業(yè)務監(jiān)控案例1 – 混淆業(yè)務監(jiān)控與系統(tǒng)監(jiān)控
2.業(yè)務監(jiān)控案例2 – 混淆業(yè)務監(jiān)控與業(yè)務報表
3.業(yè)務監(jiān)控案例3 – 全鏈路業(yè)務追蹤
4.業(yè)務監(jiān)控案例4 – 數(shù)據(jù)監(jiān)控
5.數(shù)據(jù)監(jiān)控的分析方法 – 7種不同的異常模式
4.如何從“測試”上避免出問題
1.功能測試
2.壓力測試/性能測試
3.混沌工程
5.如何從“發(fā)布與變更管理”上避免出問題
1.變更的三板斧
2.代碼的灰度發(fā)布
3.配置的灰度發(fā)布
4.數(shù)據(jù)的灰度發(fā)布
5.線上環(huán)境的模擬仿真
6. 應急處理
1. 應急的值班制度
2. 發(fā)現(xiàn)問題的手段
3. 應急的各種手段
4. 應急預案
7.問題排查與根因定位
1. 問題排查的前提條件
2. 問題排查的分類
3. 問題排查的基本思維
8. 業(yè)務邏輯問題排查
1. 自身的業(yè)務邏輯問題
2. 上游的業(yè)務邏輯問題
3. 下游的業(yè)務邏輯問題
9.技術(shù)問題排查
1. CPU飆高 – 排查技巧與解決
2. 內(nèi)存泄漏 – 排查技巧與解決
3. GC頻繁 – 排查技巧與解決
4. 其它種類問題
5. 問題排查的其他建議
6. 事故復盤機制
第4天 - 高階內(nèi)容 - 跨城容災與異地多活
第一單元 容災標準與原則
1.1信息系統(tǒng)容災國標 GB/T 20988-2007
1.2金融行業(yè)信息系統(tǒng)容災標準
1.3 常用業(yè)務場景的容災要求
(1)信息提供類:比如搜索/推薦,電商商品查詢系統(tǒng)
(2)消息通信類:比如IM
(3)信息更新類:比如商品庫存系統(tǒng)
(4)資金類:金融、支付
1.4 原則
(1)不要追求完美
(2)方案的循序漸進 – 演進路線圖
(3)覆蓋業(yè)務的循序漸進 – 業(yè)務分級、數(shù)據(jù)分級
(4) 技術(shù)約束:物理約束、基礎(chǔ)架構(gòu)約束(DB復制技術(shù)、KV復制技術(shù)、跨城消息中間件)
(5) 根據(jù)業(yè)務場景選擇合適的數(shù)據(jù)復制模式:復制模式、分片模式、自治模式的選型
(6) 成本、業(yè)務價值、團隊能力、風險的權(quán)衡
第二單元 跨城容災對基礎(chǔ)架構(gòu)的要求
(1) 廣義網(wǎng)負載均衡: DNS與GSLB
(2) 局域網(wǎng)負載均衡: F5, TGW/MGW/VGW
(3) API網(wǎng)關(guān)(Nginx/Apache/自研等)
(4) 微服務框架支持
(5) Mysql/KV/MQ跨城能力
第三單元 跨城容災的方法論
第三單元 跨城容災的方法論 3.1 數(shù)據(jù)一致性保證
3.2 可靠切換
3.3 切換演習 & 容災演習
1. FMEA風險分析方法
2.方案設(shè)計
3.實施、記錄
4.復盤
5.常態(tài)化
3.4全鏈路統(tǒng)籌協(xié)調(diào)能力:開發(fā)、運維、測試、業(yè)務的4方協(xié)同問題
3.5 成本權(quán)衡
第四單元 典型案例剖析
案例介紹

活動詳情

提交需求