架構(gòu)師
互聯(lián)網(wǎng)
用戶體驗
分布式系統(tǒng)
分布式
推薦課程
average > 0 ? $model->average . '分' : '10.0分' ?>

大型網(wǎng)站技術(shù)架構(gòu)與業(yè)務(wù)架構(gòu)融合之道

哈瑞

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

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

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

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

課程費用

5800.00 /人

課程時長

2

成為教練

課程簡介

隨著互聯(lián)網(wǎng)的發(fā)展,很多大型網(wǎng)站或系統(tǒng)要處理海量的用戶訪問,需要解決高并發(fā)、高可用和由此帶來的數(shù)據(jù)一致性問題,這也使得大家把大部分精力都用在了解決這些問題上面。我把這些問題稱為“顯性問題”,因為如果解決不好,會造成系統(tǒng)宕機(jī),用戶體驗受損,給企業(yè)帶來嚴(yán)重?fù)p失,大家都能意識到這種問題很重要。解決的思路通常有兩個:第一,利用分布式系統(tǒng)的特性,不斷地分拆,把大系統(tǒng)拆小,降低風(fēng)險,各個擊破;第二,小步快跑,快速迭代,設(shè)計不合理沒關(guān)系,可以不斷重構(gòu),不斷發(fā)布新版本。

但還有一類問題是“隱性問題”,是指系統(tǒng)的可重用性、可擴(kuò)展性、可維護(hù)性等。因為一個系統(tǒng)由于設(shè)計得不好導(dǎo)致研發(fā)人力的投入和時間成本的增加,往往是沒有辦法顯式地衡量的??赡懿皇窍到y(tǒng)設(shè)計得不好,而是業(yè)務(wù)本身就很復(fù)雜,又或者各部門之間的溝通協(xié)調(diào)問題,所以導(dǎo)致開發(fā)效率低。再說,即使系統(tǒng)設(shè)計得不好,做新功能有沉重的歷史包袱,還能通過加班加點解決。但其實“隱性問題”比“顯性問題”影響更大,因為它會讓技術(shù)拖業(yè)務(wù)后腿,當(dāng)有新需求的時候,系統(tǒng)無法跟隨業(yè)務(wù)快速變化。

本課程希望同時深入討論這兩方面問題,從而打通技術(shù)和業(yè)務(wù)的任督二脈。

目標(biāo)收益

(1) 對高并發(fā)、高可用系統(tǒng)的設(shè)計,形成一個方法論。
(2) 對業(yè)務(wù)建模、DDD,形成一個直觀認(rèn)識,可以落地
(3) 對架構(gòu)體系形成一個宏觀把握,幫助自身職業(yè)生涯更上一步。
(4) 對產(chǎn)品、業(yè)務(wù)、技術(shù)的分工與協(xié)作,有更清楚的認(rèn)識。

培訓(xùn)對象

開發(fā)大型網(wǎng)站、大型后臺系統(tǒng)的軟件架構(gòu)師、技術(shù)Leader、程序員、產(chǎn)品經(jīng)理;管理多個研發(fā)團(tuán)隊的技術(shù)負(fù)責(zé)人
該培訓(xùn)對于開發(fā)以下類型系統(tǒng)特別有幫助:
1、用戶訪問量大,高并發(fā)、高可用系統(tǒng)
2、業(yè)務(wù)邏輯特別復(fù)雜
3、研發(fā)團(tuán)隊規(guī)模特別大,上千人

課程大綱

引子 面對大型系統(tǒng),經(jīng)常會遇到2類技術(shù)人員和團(tuán)隊:
(1)技術(shù)功底不錯,但不懂業(yè)務(wù),導(dǎo)致系統(tǒng)邊界混亂、團(tuán)隊分工不明確、接口設(shè)計不合理、系統(tǒng)難理解;(2)懂業(yè)務(wù),但技術(shù)不夠,無法很好處理高并發(fā)、高可用、性能等問題。 該課程希望重點來討論這2類問題,最終把業(yè)務(wù)和技術(shù)很好的融合起來,從而讓大家形成一個完整的知識體系
第一單元 高并發(fā)問題
該單元介紹高并發(fā)問題的經(jīng)典解決方案:1. 高并發(fā)讀
(1)緩存
(2)并發(fā)讀
(3)重寫輕讀
2.高并發(fā)寫:
(1)數(shù)據(jù)分片
(2)任務(wù)分片
(3)異步
(4)批量
(5)串行化 + 異步IO

第二單元 高可用問題
該單元介紹高可用問題的經(jīng)典解決方案:
(1)多副本。雞蛋不要放在一個籃子里。
(2)隔離、限流、熔斷、降級
Netflex的Hystrix,阿里的Sentinel
(3)灰度發(fā)布、回滾
(4)監(jiān)控體系:資源監(jiān)控、系統(tǒng)監(jiān)控、業(yè)務(wù)監(jiān)控
第三單元 分布式事務(wù)
該單元介紹分布式事務(wù)的經(jīng)典解決方案:
(1)2PC
(2)最終一致性(消息中間件)
(3)TCC
(4)事務(wù)狀態(tài)表+調(diào)用方重試+接收方冪等
(5)對賬
(6)妥協(xié)方案:弱一致性+基于狀態(tài)的補(bǔ)償
(7)妥協(xié)方案:重試+回滾+報警+人工修復(fù)
第四單元 一致性算法(Paxos/Raft/Zab)
該單元介紹經(jīng)典的3種一致性算法以及業(yè)界的一些產(chǎn)品:
1.Paxos算法
? 騰訊的PhxPaxos、PhxSQL、PaxosStore
? 阿里的AliSQL X-Cluster、X-Paxos
? MySQL的MGR
? Google的Chubby
2. Raft算法
? 阿里的RDS(Relation Database Service)
? etcd
? TiDB
? 百度開源的bRaft
? 唯品會的VDL
3. Zab算法
Zookeeper
第五單元 業(yè)務(wù)架構(gòu)思維
從需要分析到業(yè)務(wù)建模的常用思維模式:
(1) 分層
(2) 邊界思維
(3) 系統(tǒng)化思維
(4) 利益相關(guān)者分析
(5) 非功能性需求分析(以終為始)
(6) 視角(架構(gòu)4+1/5+1視圖)
(7) 抽象
(8) 建模
(9) 正交分解
第六單元 DDD
通俗的闡釋DDD:
(1)各式各樣的方法論
(2) 為什么要“領(lǐng)域驅(qū)動”
(3)“業(yè)務(wù)流程”不等于“系統(tǒng)流程”
(4) 為何很難設(shè)計一個好的領(lǐng)域模型
(5) 領(lǐng)域驅(qū)動設(shè)計與微服務(wù)架構(gòu)的“合”
(6) 領(lǐng)域驅(qū)動設(shè)計與讀寫分離(CQRS)
第7單元 技術(shù)架構(gòu)與業(yè)務(wù)架構(gòu)融合
技術(shù)架構(gòu)與業(yè)務(wù)架構(gòu)融合設(shè)計
(1) 軟件開發(fā)生命周期
(2) 草圖與概念圖
(3) 領(lǐng)域模型設(shè)計
(4) 4+1視圖
(5) 微服務(wù)拆解
(6) 走查與反向修正
第8單元 團(tuán)隊管理
1. 管項目
2. 管業(yè)務(wù)3. 管人

1. 項目管理
如何推動項目按時、按質(zhì)完成
2. 業(yè)務(wù)管理
如何達(dá)成業(yè)務(wù)目標(biāo)
3. 團(tuán)隊管理
團(tuán)隊培養(yǎng)與團(tuán)隊規(guī)劃
引子
面對大型系統(tǒng),經(jīng)常會遇到2類技術(shù)人員和團(tuán)隊:
(1)技術(shù)功底不錯,但不懂業(yè)務(wù),導(dǎo)致系統(tǒng)邊界混亂、團(tuán)隊分工不明確、接口設(shè)計不合理、系統(tǒng)難理解;(2)懂業(yè)務(wù),但技術(shù)不夠,無法很好處理高并發(fā)、高可用、性能等問題。 該課程希望重點來討論這2類問題,最終把業(yè)務(wù)和技術(shù)很好的融合起來,從而讓大家形成一個完整的知識體系
第一單元 高并發(fā)問題

該單元介紹高并發(fā)問題的經(jīng)典解決方案:1. 高并發(fā)讀
(1)緩存
(2)并發(fā)讀
(3)重寫輕讀
2.高并發(fā)寫:
(1)數(shù)據(jù)分片
(2)任務(wù)分片
(3)異步
(4)批量
(5)串行化 + 異步IO

第二單元 高可用問題

該單元介紹高可用問題的經(jīng)典解決方案:
(1)多副本。雞蛋不要放在一個籃子里。
(2)隔離、限流、熔斷、降級
Netflex的Hystrix,阿里的Sentinel
(3)灰度發(fā)布、回滾
(4)監(jiān)控體系:資源監(jiān)控、系統(tǒng)監(jiān)控、業(yè)務(wù)監(jiān)控
第三單元 分布式事務(wù)

該單元介紹分布式事務(wù)的經(jīng)典解決方案:
(1)2PC
(2)最終一致性(消息中間件)
(3)TCC
(4)事務(wù)狀態(tài)表+調(diào)用方重試+接收方冪等
(5)對賬
(6)妥協(xié)方案:弱一致性+基于狀態(tài)的補(bǔ)償
(7)妥協(xié)方案:重試+回滾+報警+人工修復(fù)
第四單元 一致性算法(Paxos/Raft/Zab)

該單元介紹經(jīng)典的3種一致性算法以及業(yè)界的一些產(chǎn)品:
1.Paxos算法
? 騰訊的PhxPaxos、PhxSQL、PaxosStore
? 阿里的AliSQL X-Cluster、X-Paxos
? MySQL的MGR
? Google的Chubby
2. Raft算法
? 阿里的RDS(Relation Database Service)
? etcd
? TiDB
? 百度開源的bRaft
? 唯品會的VDL
3. Zab算法
Zookeeper
第五單元 業(yè)務(wù)架構(gòu)思維

從需要分析到業(yè)務(wù)建模的常用思維模式:
(1) 分層
(2) 邊界思維
(3) 系統(tǒng)化思維
(4) 利益相關(guān)者分析
(5) 非功能性需求分析(以終為始)
(6) 視角(架構(gòu)4+1/5+1視圖)
(7) 抽象
(8) 建模
(9) 正交分解
第六單元 DDD

通俗的闡釋DDD:
(1)各式各樣的方法論
(2) 為什么要“領(lǐng)域驅(qū)動”
(3)“業(yè)務(wù)流程”不等于“系統(tǒng)流程”
(4) 為何很難設(shè)計一個好的領(lǐng)域模型
(5) 領(lǐng)域驅(qū)動設(shè)計與微服務(wù)架構(gòu)的“合”
(6) 領(lǐng)域驅(qū)動設(shè)計與讀寫分離(CQRS)
第7單元 技術(shù)架構(gòu)與業(yè)務(wù)架構(gòu)融合

技術(shù)架構(gòu)與業(yè)務(wù)架構(gòu)融合設(shè)計
(1) 軟件開發(fā)生命周期
(2) 草圖與概念圖
(3) 領(lǐng)域模型設(shè)計
(4) 4+1視圖
(5) 微服務(wù)拆解
(6) 走查與反向修正
第8單元 團(tuán)隊管理

1. 管項目
2. 管業(yè)務(wù)3. 管人

1. 項目管理
如何推動項目按時、按質(zhì)完成
2. 業(yè)務(wù)管理
如何達(dá)成業(yè)務(wù)目標(biāo)
3. 團(tuán)隊管理
團(tuán)隊培養(yǎng)與團(tuán)隊規(guī)劃

課程費用

5800.00 /人

課程時長

2

預(yù)約體驗票 我要分享

近期公開課推薦

近期公開課推薦

活動詳情

提交需求