架構(gòu)師
互聯(lián)網(wǎng)
電商
電信
推薦課程
average > 0 ? $model->average . '分' : '10.0分' ?>

高質(zhì)量軟件架構(gòu)設(shè)計(jì)案例分析和最佳實(shí)踐

課程費(fèi)用

6800.00 /人

課程時(shí)長(zhǎng)

3

成為教練

課程簡(jiǎn)介

隨著網(wǎng)絡(luò)與信息技術(shù)的高速發(fā)展,軟件研發(fā)逐漸朝著大規(guī)模、高復(fù)雜度的大型軟件系統(tǒng)發(fā)展。特別是隨著近幾年互聯(lián)網(wǎng)的高速發(fā)展,帶動(dòng)著全行業(yè)的互聯(lián)網(wǎng)轉(zhuǎn)型,使得未來(lái)的軟件系統(tǒng)還將向著持續(xù)性、深層次架構(gòu)調(diào)整的方向發(fā)展。在這樣的背景下,如何從全局的角度思考軟件系統(tǒng)方方面面的問(wèn)題,提前識(shí)別軟件項(xiàng)目的技術(shù)風(fēng)險(xiǎn)點(diǎn),并有針對(duì)性地制訂技術(shù)方案,以及如何構(gòu)建一個(gè)更加靈活、易于調(diào)整、快速變化的軟件系統(tǒng),成為大型軟件系統(tǒng)至關(guān)重要的設(shè)計(jì)內(nèi)容。

目標(biāo)收益

本課程首先將系統(tǒng)地講述高質(zhì)量的軟件架構(gòu)該設(shè)計(jì)過(guò)程,包括如何運(yùn)用領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的思想貫穿整個(gè)架構(gòu)設(shè)計(jì),又如何使軟件系統(tǒng)在衍變中調(diào)整架構(gòu),從而適應(yīng)需求的變化;如何運(yùn)用5視圖的方法,全面地思考軟件架構(gòu)各方面的問(wèn)題:從需求的角度進(jìn)行可行性分析;從全局的角度進(jìn)行軟件分層、技術(shù)選型、模塊劃分等方面的設(shè)計(jì);運(yùn)用數(shù)據(jù)持久化的方式設(shè)計(jì)數(shù)據(jù)結(jié)構(gòu);運(yùn)用“屬性->場(chǎng)景->決策”的過(guò)程把握非功能設(shè)計(jì);從部署、網(wǎng)絡(luò)、性能的角度進(jìn)行物理架構(gòu)的設(shè)計(jì),從而有效避免架構(gòu)設(shè)計(jì)時(shí)遺漏關(guān)鍵風(fēng)險(xiǎn)點(diǎn),使架構(gòu)設(shè)計(jì)過(guò)程變得有序。

培訓(xùn)對(duì)象

中高級(jí)工程師、企業(yè)架構(gòu)師、軟件設(shè)計(jì)師、數(shù)據(jù)庫(kù)/存儲(chǔ)技術(shù)人員、技術(shù)決策/解決方案人員等。

課程大綱

第一部分 高質(zhì)量架構(gòu)設(shè)計(jì)
第一單元 軟件架構(gòu)設(shè)計(jì)概述
情景?。很浖軜?gòu)設(shè)計(jì)的價(jià)值
1. 一個(gè)人的軟件設(shè)計(jì)過(guò)程
2. 5個(gè)人的軟件設(shè)計(jì)過(guò)程
3. 10個(gè)人的軟件設(shè)計(jì)過(guò)程
4. 10個(gè)人以上的軟件設(shè)計(jì)過(guò)程
結(jié)論:揭示架構(gòu)設(shè)計(jì)的價(jià)值與架構(gòu)師的作用

架構(gòu)設(shè)計(jì)5視圖法:
1. 介紹架構(gòu)設(shè)計(jì)5視圖法
2. 運(yùn)用5視圖法設(shè)計(jì)軟件架構(gòu)的過(guò)程
第二單元 邏輯架構(gòu)設(shè)計(jì)過(guò)程 案例講解邏輯架構(gòu)的設(shè)計(jì)過(guò)程
1. 邏輯架構(gòu)的概念與作用
2. 需求分析與用例模型設(shè)計(jì)
? 由粗到細(xì)的需求分析過(guò)程
? 不同類型的用例描述
3. 流程分析與行動(dòng)圖
4. 領(lǐng)域模型分析
? 講解領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的思想
? 在需求討論中繪制領(lǐng)域模型
? 用原文分析法進(jìn)行領(lǐng)域分析
5. 需求確認(rèn)與可行性分析
? 探討需求不可行給項(xiàng)目帶來(lái)的風(fēng)險(xiǎn)
? 案例講解主動(dòng)式需求分析的過(guò)程
第三單元 開發(fā)架構(gòu)設(shè)計(jì)過(guò)程 案例講解開發(fā)架構(gòu)的設(shè)計(jì)過(guò)程
1. 開發(fā)架構(gòu)的概念與作用
2. 討論合理的分層架構(gòu)
案例:演示一個(gè)工資系統(tǒng)的需求變更過(guò)程
? 展示三次巨大需求變更及其分析設(shè)計(jì)過(guò)程
? 探討什么樣的架構(gòu)能真正適應(yīng)需求的變更
3. 技術(shù)選型與決策
4. 軟件架構(gòu)設(shè)計(jì)
? 案例講解軟件的可擴(kuò)展設(shè)計(jì)
? 案例講解軟件的易維護(hù)設(shè)計(jì)
5. 模塊劃分與分包
6. 軟件開發(fā)規(guī)范的制訂
第四單元 數(shù)據(jù)架構(gòu)設(shè)計(jì)過(guò)程 探討傳統(tǒng)的數(shù)據(jù)架構(gòu)設(shè)計(jì)過(guò)程
講解基于領(lǐng)域的數(shù)據(jù)架構(gòu)設(shè)計(jì)過(guò)程
1. 如何將領(lǐng)域模型轉(zhuǎn)換為數(shù)據(jù)庫(kù)設(shè)計(jì)
? 傳統(tǒng)的4種關(guān)系轉(zhuǎn)換為數(shù)據(jù)庫(kù)設(shè)計(jì)
? 繼承關(guān)系的3種數(shù)據(jù)庫(kù)設(shè)計(jì)
2. 如何將領(lǐng)域模型轉(zhuǎn)換為軟件
貧血模型 vs. 充血模型
第五單位 運(yùn)行架構(gòu)設(shè)計(jì)過(guò)程 探討運(yùn)行架構(gòu)的設(shè)計(jì)過(guò)程
1. 關(guān)注關(guān)鍵點(diǎn)與難點(diǎn)而不是全局
2. 屬性→場(chǎng)景→決策的分析過(guò)程

專題討論運(yùn)行架構(gòu)需要決策的內(nèi)容
1. 并發(fā)訪問(wèn)與串行操作
2. 同步操作與異步操作
3. 進(jìn)程與線程
第六單元 物理架構(gòu)設(shè)計(jì)過(guò)程 探討物理架構(gòu)設(shè)計(jì)過(guò)程
1. 案例講解一些常見(jiàn)物理架構(gòu)設(shè)計(jì)
2. 案例講解應(yīng)用架構(gòu)設(shè)計(jì)
3. 案例講解一些技術(shù)方案的編寫
第七單元 逐步演化的架構(gòu)設(shè)計(jì) 恰如其分的架構(gòu)設(shè)計(jì)
1. 恰如其分的架構(gòu)設(shè)計(jì)過(guò)程
案例:一個(gè)郵件系統(tǒng)的架構(gòu)演變過(guò)程
2. 風(fēng)險(xiǎn)驅(qū)動(dòng)的架構(gòu)設(shè)計(jì)

逐步演化的架構(gòu)設(shè)計(jì)過(guò)程
1. 探討老系統(tǒng)維護(hù)過(guò)程中架構(gòu)設(shè)計(jì)的問(wèn)題
2. 剖析以往采取的辦法及失敗的原因
? 縫縫補(bǔ)補(bǔ)不能從根本上解決
? 走一步退兩步淺嘗輒止的根源
? 拋棄一切從頭再來(lái)的風(fēng)險(xiǎn)
3. 剖析問(wèn)題的根源與解決的辦法
? 演化式改造的過(guò)程
? 平臺(tái)建設(shè)與重構(gòu)并行
? 改造與維護(hù)并舉

剖析架構(gòu)設(shè)計(jì)中的一些常見(jiàn)誤區(qū)
第二部分互聯(lián)網(wǎng)架構(gòu)設(shè)計(jì)
第八單元 大并發(fā)相關(guān)的指標(biāo)
高并發(fā)相關(guān)的指標(biāo)
1. 吞吐量 / 每秒事務(wù)數(shù) / 事務(wù)響應(yīng)時(shí)間
2. 用戶數(shù) / 用戶并發(fā)數(shù) / 最大用戶并發(fā)數(shù)

高并發(fā)問(wèn)題的解決思路
1. 目標(biāo)→問(wèn)題→方案
2. 業(yè)務(wù)梳理與優(yōu)化
第九單元 并發(fā)問(wèn)題的快速優(yōu)化策略 傳統(tǒng)架構(gòu)的演變過(guò)程
1. All-in-One的架構(gòu)設(shè)計(jì)
2. 多級(jí)集中的架構(gòu)設(shè)計(jì)
3. 傳統(tǒng)架構(gòu)面臨的挑戰(zhàn)

基于風(fēng)險(xiǎn)的架構(gòu)設(shè)計(jì)思想
1. 先識(shí)別未來(lái)存在的風(fēng)險(xiǎn),再進(jìn)行有針對(duì)的架構(gòu)設(shè)計(jì)
2. 用最快的速度解決最急迫的問(wèn)題

并發(fā)問(wèn)題的快速優(yōu)化策略
1. 智能DNS及其優(yōu)缺點(diǎn)
2. CDN內(nèi)容分發(fā)網(wǎng)絡(luò)及其優(yōu)缺點(diǎn)
3. 負(fù)載均衡與反向代理
1)Nginx技術(shù)及其解決的問(wèn)題
2)動(dòng)靜分離的設(shè)計(jì)
3)Zookeeper及其非中心化設(shè)計(jì)
第十單元 數(shù)據(jù)庫(kù)瓶頸及其優(yōu)化策略 數(shù)據(jù)庫(kù)瓶頸
1. 現(xiàn)有數(shù)據(jù)庫(kù)設(shè)計(jì)及其性能瓶
2. Shared Disk vs. Shared Nothing
3. 介紹PostgreSQL與GreenPlum

數(shù)據(jù)庫(kù)讀寫分離的設(shè)計(jì)
1. 三種不同類型的操作及其優(yōu)化策略
業(yè)務(wù)操作 / 隨機(jī)查詢 / 統(tǒng)計(jì)分析
2. MySQL主從機(jī)實(shí)現(xiàn)讀寫分離
1)MySQL主從機(jī)實(shí)現(xiàn)讀寫分離的思想與局限
2)在原有系統(tǒng)上實(shí)現(xiàn)讀寫分離的改造過(guò)程
3. 真正實(shí)現(xiàn)讀寫分離的設(shè)計(jì)方案

數(shù)據(jù)庫(kù)分庫(kù)的設(shè)計(jì)思想
1. 縱向拆分的設(shè)計(jì)思想及其注意的問(wèn)題
案例:國(guó)家金稅三期的架構(gòu)設(shè)計(jì)
案例:阿里巴巴的架構(gòu)設(shè)計(jì)
2. 橫向拆分的設(shè)計(jì)思想及其注意的問(wèn)題
1)按地域拆分的設(shè)計(jì)及其評(píng)價(jià)
2)按用戶號(hào)進(jìn)行拆分的設(shè)計(jì)及其評(píng)價(jià)
案例:淘寶網(wǎng)的架構(gòu)設(shè)計(jì)解析
3. 在原有系統(tǒng)上如何實(shí)現(xiàn)數(shù)據(jù)庫(kù)分庫(kù)
1)縱向拆分的系統(tǒng)改造過(guò)程
2)橫向拆分的系統(tǒng)改造過(guò)程
第十一單元 應(yīng)用緩存的設(shè)計(jì) 應(yīng)用緩存技術(shù)
1. 應(yīng)用緩存技術(shù)解決的問(wèn)題
2. 單機(jī)緩存 vs. 分布式緩存
3. 分布式緩存的特點(diǎn)及其設(shè)計(jì)

Memcached技術(shù)
1. Memcached技術(shù)及其特點(diǎn)
2. 分布式哈希算法及其一致性哈希
3. Memcached的部署結(jié)構(gòu)及其應(yīng)用方案
案例:負(fù)載均衡的session同步及其故障轉(zhuǎn)移

如何在原有系統(tǒng)上進(jìn)行應(yīng)用緩存改造
1. Spring + Memcached的設(shè)計(jì)改造過(guò)程
2. Hibernate + Memcached的設(shè)計(jì)改造過(guò)程
3. Memcached的命中率分析及其調(diào)優(yōu)
4. 應(yīng)用緩存的設(shè)計(jì)過(guò)程中應(yīng)當(dāng)注意的問(wèn)題
第十二單元 內(nèi)存數(shù)據(jù)庫(kù)的設(shè)計(jì) 內(nèi)存數(shù)據(jù)庫(kù)技術(shù)
1. 內(nèi)存數(shù)據(jù)庫(kù)的概念
2. 解析內(nèi)存數(shù)據(jù)庫(kù)的運(yùn)行原理
3. Oracle TimesTen的介紹
4. Gemfire及其在12306的應(yīng)用

Redis內(nèi)存數(shù)據(jù)庫(kù)技術(shù)
1. Redis的運(yùn)行原理及其特點(diǎn)
2. Redis的部署形式
3. Redis的應(yīng)用設(shè)計(jì)
案例:spring-redis-data的設(shè)計(jì)應(yīng)用
案例:京東訂單系統(tǒng)的優(yōu)化過(guò)程
4. 內(nèi)存數(shù)據(jù)庫(kù)的設(shè)計(jì)局限
第十三單元 異步化操作的設(shè)計(jì) 1. 異步化操作的原理
案例:12306的異步化改造過(guò)程
2. 異步化操作的設(shè)計(jì)實(shí)踐
3. 分布式隊(duì)列的設(shè)計(jì)
第十四單元 互聯(lián)網(wǎng)不斷演進(jìn)的架構(gòu)設(shè)計(jì)過(guò)程 互聯(lián)網(wǎng)+時(shí)代的架構(gòu)設(shè)計(jì)特點(diǎn)
1. 互聯(lián)網(wǎng)+帶來(lái)的巨大變革
2. 互聯(lián)網(wǎng)公司不斷面對(duì)的升級(jí)改造
3. 傳統(tǒng)行業(yè)必須面對(duì)的互聯(lián)網(wǎng)轉(zhuǎn)型

好的架構(gòu)源于不斷的衍變
案例:58同城的架構(gòu)衍變過(guò)程
1. 最初的架構(gòu)設(shè)計(jì)
2. 網(wǎng)絡(luò)接入層的改造過(guò)程
3. 數(shù)據(jù)庫(kù)拆分的改造過(guò)程
4. 服務(wù)化為中心的改造過(guò)程
第十五單元 大并發(fā)架構(gòu)設(shè)計(jì)的驗(yàn)證 1. 設(shè)計(jì)測(cè)試用例與場(chǎng)景
2. 錄制測(cè)試腳本執(zhí)行測(cè)試
3. 測(cè)試結(jié)果的評(píng)價(jià)與調(diào)優(yōu)
4. 編寫性能測(cè)試報(bào)告
案例:某大型互聯(lián)網(wǎng)開票系統(tǒng)的架構(gòu)驗(yàn)證過(guò)程
第三部分針對(duì)大數(shù)據(jù)的架構(gòu)設(shè)計(jì)
第十六單元 NoSQL數(shù)據(jù)庫(kù)及其設(shè)計(jì)
NoSQL數(shù)據(jù)庫(kù)的概念
1. 分布式架構(gòu)與CAP理論
2. ACID vs. BASE
3. 強(qiáng)一致性與弱一致性
4. NoSQL數(shù)據(jù)庫(kù)的特點(diǎn)

MongoDB數(shù)據(jù)庫(kù)
1. MongoDB數(shù)據(jù)庫(kù)簡(jiǎn)介
2. MongoDB數(shù)據(jù)庫(kù)的概念模型
3. 插入、更新、刪除、查詢操作
案例:MongoDB實(shí)現(xiàn)企業(yè)征信報(bào)告的海量存儲(chǔ)與快速查詢
4. MongoDB數(shù)據(jù)庫(kù)的優(yōu)劣勢(shì)分析與適用范圍
第十七單元 Hadoop大數(shù)據(jù)處理技術(shù) Hadoop大數(shù)據(jù)處理技術(shù)
1. Hadoop簡(jiǎn)介
2. Hadoop生態(tài)圈
3. Hadoop架構(gòu)及其與傳統(tǒng)架構(gòu)的優(yōu)勢(shì)

Hadoop的核心組件
1. 解析HDFS分布式文件系統(tǒng)的運(yùn)行原理
2. 解析MapReduce分布式運(yùn)算框架的運(yùn)行原理
3. MapReduce的優(yōu)劣勢(shì)與適用范圍
案例:WordCount詞頻計(jì)算程序的分析設(shè)計(jì)過(guò)程

Hadoop的生態(tài)圈
1. Hive技術(shù)
1)Hive技術(shù)簡(jiǎn)介
2)Hive與傳統(tǒng)關(guān)系型數(shù)據(jù)庫(kù)的比較
3)Hive的建表、載入數(shù)據(jù)、查詢數(shù)據(jù)的語(yǔ)句
2. Spark技術(shù)
1)Spark設(shè)計(jì)原理
2)Spark編程實(shí)踐
案例:Spark小步快跑的設(shè)計(jì)過(guò)程
3. Sqoop技術(shù)
1)Sqoop技術(shù)簡(jiǎn)介
2)Sqoop導(dǎo)入語(yǔ)句
3)Sqoop導(dǎo)出語(yǔ)句
4. HBase數(shù)據(jù)庫(kù)
1)HBase數(shù)據(jù)庫(kù)的簡(jiǎn)介
2)HBase數(shù)據(jù)庫(kù)的概念模型
3)HBase的面向列式存儲(chǔ)
4)HBase的系統(tǒng)架構(gòu)
案例:用HBase存儲(chǔ)與展示搜索結(jié)果
5. ElasticSearch搜索引擎
1)ElasticSearch設(shè)計(jì)原理
2)ElasticSearch+Hive的設(shè)計(jì)方案
3)ElasticSearch的RUSTful數(shù)據(jù)搜索
案例:如何實(shí)現(xiàn)海量數(shù)據(jù)秒級(jí)響應(yīng)

Hadoop的安裝部署
1. Hadoop的物理部署架構(gòu)
2. Hadoop的技術(shù)選型
3. Hadoop的組件部署結(jié)構(gòu)
第十八單元 面向主題的數(shù)據(jù)倉(cāng)庫(kù)設(shè)計(jì) 數(shù)據(jù)倉(cāng)庫(kù)的概念
1. 大范圍數(shù)據(jù)統(tǒng)計(jì)的操作特點(diǎn)與設(shè)計(jì)思路
2. 數(shù)據(jù)倉(cāng)庫(kù)的架構(gòu)設(shè)計(jì)

大數(shù)據(jù)環(huán)境下的數(shù)據(jù)倉(cāng)庫(kù)設(shè)計(jì)
1. 大數(shù)據(jù)環(huán)境下數(shù)據(jù)倉(cāng)庫(kù)設(shè)計(jì)面臨的困境
2. 講解海量數(shù)據(jù)的多維數(shù)據(jù)模型設(shè)計(jì)方案
案例:HBase實(shí)現(xiàn)大數(shù)據(jù)多維模型
案例:企業(yè)征信大數(shù)據(jù)的設(shè)計(jì)過(guò)程
3. 淺析數(shù)據(jù)挖掘與機(jī)器學(xué)習(xí)過(guò)程

傳統(tǒng)BI系統(tǒng)的大數(shù)據(jù)轉(zhuǎn)型
1. 傳統(tǒng)BI系統(tǒng)面臨的難題
2. 案例講解演化式BI轉(zhuǎn)型過(guò)程
第一部分 高質(zhì)量架構(gòu)設(shè)計(jì)
第一單元 軟件架構(gòu)設(shè)計(jì)概述
情景?。很浖軜?gòu)設(shè)計(jì)的價(jià)值
1. 一個(gè)人的軟件設(shè)計(jì)過(guò)程
2. 5個(gè)人的軟件設(shè)計(jì)過(guò)程
3. 10個(gè)人的軟件設(shè)計(jì)過(guò)程
4. 10個(gè)人以上的軟件設(shè)計(jì)過(guò)程
結(jié)論:揭示架構(gòu)設(shè)計(jì)的價(jià)值與架構(gòu)師的作用

架構(gòu)設(shè)計(jì)5視圖法:
1. 介紹架構(gòu)設(shè)計(jì)5視圖法
2. 運(yùn)用5視圖法設(shè)計(jì)軟件架構(gòu)的過(guò)程
第二單元 邏輯架構(gòu)設(shè)計(jì)過(guò)程
案例講解邏輯架構(gòu)的設(shè)計(jì)過(guò)程
1. 邏輯架構(gòu)的概念與作用
2. 需求分析與用例模型設(shè)計(jì)
? 由粗到細(xì)的需求分析過(guò)程
? 不同類型的用例描述
3. 流程分析與行動(dòng)圖
4. 領(lǐng)域模型分析
? 講解領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的思想
? 在需求討論中繪制領(lǐng)域模型
? 用原文分析法進(jìn)行領(lǐng)域分析
5. 需求確認(rèn)與可行性分析
? 探討需求不可行給項(xiàng)目帶來(lái)的風(fēng)險(xiǎn)
? 案例講解主動(dòng)式需求分析的過(guò)程
第三單元 開發(fā)架構(gòu)設(shè)計(jì)過(guò)程
案例講解開發(fā)架構(gòu)的設(shè)計(jì)過(guò)程
1. 開發(fā)架構(gòu)的概念與作用
2. 討論合理的分層架構(gòu)
案例:演示一個(gè)工資系統(tǒng)的需求變更過(guò)程
? 展示三次巨大需求變更及其分析設(shè)計(jì)過(guò)程
? 探討什么樣的架構(gòu)能真正適應(yīng)需求的變更
3. 技術(shù)選型與決策
4. 軟件架構(gòu)設(shè)計(jì)
? 案例講解軟件的可擴(kuò)展設(shè)計(jì)
? 案例講解軟件的易維護(hù)設(shè)計(jì)
5. 模塊劃分與分包
6. 軟件開發(fā)規(guī)范的制訂
第四單元 數(shù)據(jù)架構(gòu)設(shè)計(jì)過(guò)程
探討傳統(tǒng)的數(shù)據(jù)架構(gòu)設(shè)計(jì)過(guò)程
講解基于領(lǐng)域的數(shù)據(jù)架構(gòu)設(shè)計(jì)過(guò)程
1. 如何將領(lǐng)域模型轉(zhuǎn)換為數(shù)據(jù)庫(kù)設(shè)計(jì)
? 傳統(tǒng)的4種關(guān)系轉(zhuǎn)換為數(shù)據(jù)庫(kù)設(shè)計(jì)
? 繼承關(guān)系的3種數(shù)據(jù)庫(kù)設(shè)計(jì)
2. 如何將領(lǐng)域模型轉(zhuǎn)換為軟件
貧血模型 vs. 充血模型
第五單位 運(yùn)行架構(gòu)設(shè)計(jì)過(guò)程
探討運(yùn)行架構(gòu)的設(shè)計(jì)過(guò)程
1. 關(guān)注關(guān)鍵點(diǎn)與難點(diǎn)而不是全局
2. 屬性→場(chǎng)景→決策的分析過(guò)程

專題討論運(yùn)行架構(gòu)需要決策的內(nèi)容
1. 并發(fā)訪問(wèn)與串行操作
2. 同步操作與異步操作
3. 進(jìn)程與線程
第六單元 物理架構(gòu)設(shè)計(jì)過(guò)程
探討物理架構(gòu)設(shè)計(jì)過(guò)程
1. 案例講解一些常見(jiàn)物理架構(gòu)設(shè)計(jì)
2. 案例講解應(yīng)用架構(gòu)設(shè)計(jì)
3. 案例講解一些技術(shù)方案的編寫
第七單元 逐步演化的架構(gòu)設(shè)計(jì)
恰如其分的架構(gòu)設(shè)計(jì)
1. 恰如其分的架構(gòu)設(shè)計(jì)過(guò)程
案例:一個(gè)郵件系統(tǒng)的架構(gòu)演變過(guò)程
2. 風(fēng)險(xiǎn)驅(qū)動(dòng)的架構(gòu)設(shè)計(jì)

逐步演化的架構(gòu)設(shè)計(jì)過(guò)程
1. 探討老系統(tǒng)維護(hù)過(guò)程中架構(gòu)設(shè)計(jì)的問(wèn)題
2. 剖析以往采取的辦法及失敗的原因
? 縫縫補(bǔ)補(bǔ)不能從根本上解決
? 走一步退兩步淺嘗輒止的根源
? 拋棄一切從頭再來(lái)的風(fēng)險(xiǎn)
3. 剖析問(wèn)題的根源與解決的辦法
? 演化式改造的過(guò)程
? 平臺(tái)建設(shè)與重構(gòu)并行
? 改造與維護(hù)并舉

剖析架構(gòu)設(shè)計(jì)中的一些常見(jiàn)誤區(qū)
第二部分互聯(lián)網(wǎng)架構(gòu)設(shè)計(jì)
第八單元 大并發(fā)相關(guān)的指標(biāo)
高并發(fā)相關(guān)的指標(biāo)
1. 吞吐量 / 每秒事務(wù)數(shù) / 事務(wù)響應(yīng)時(shí)間
2. 用戶數(shù) / 用戶并發(fā)數(shù) / 最大用戶并發(fā)數(shù)

高并發(fā)問(wèn)題的解決思路
1. 目標(biāo)→問(wèn)題→方案
2. 業(yè)務(wù)梳理與優(yōu)化
第九單元 并發(fā)問(wèn)題的快速優(yōu)化策略
傳統(tǒng)架構(gòu)的演變過(guò)程
1. All-in-One的架構(gòu)設(shè)計(jì)
2. 多級(jí)集中的架構(gòu)設(shè)計(jì)
3. 傳統(tǒng)架構(gòu)面臨的挑戰(zhàn)

基于風(fēng)險(xiǎn)的架構(gòu)設(shè)計(jì)思想
1. 先識(shí)別未來(lái)存在的風(fēng)險(xiǎn),再進(jìn)行有針對(duì)的架構(gòu)設(shè)計(jì)
2. 用最快的速度解決最急迫的問(wèn)題

并發(fā)問(wèn)題的快速優(yōu)化策略
1. 智能DNS及其優(yōu)缺點(diǎn)
2. CDN內(nèi)容分發(fā)網(wǎng)絡(luò)及其優(yōu)缺點(diǎn)
3. 負(fù)載均衡與反向代理
1)Nginx技術(shù)及其解決的問(wèn)題
2)動(dòng)靜分離的設(shè)計(jì)
3)Zookeeper及其非中心化設(shè)計(jì)
第十單元 數(shù)據(jù)庫(kù)瓶頸及其優(yōu)化策略
數(shù)據(jù)庫(kù)瓶頸
1. 現(xiàn)有數(shù)據(jù)庫(kù)設(shè)計(jì)及其性能瓶
2. Shared Disk vs. Shared Nothing
3. 介紹PostgreSQL與GreenPlum

數(shù)據(jù)庫(kù)讀寫分離的設(shè)計(jì)
1. 三種不同類型的操作及其優(yōu)化策略
業(yè)務(wù)操作 / 隨機(jī)查詢 / 統(tǒng)計(jì)分析
2. MySQL主從機(jī)實(shí)現(xiàn)讀寫分離
1)MySQL主從機(jī)實(shí)現(xiàn)讀寫分離的思想與局限
2)在原有系統(tǒng)上實(shí)現(xiàn)讀寫分離的改造過(guò)程
3. 真正實(shí)現(xiàn)讀寫分離的設(shè)計(jì)方案

數(shù)據(jù)庫(kù)分庫(kù)的設(shè)計(jì)思想
1. 縱向拆分的設(shè)計(jì)思想及其注意的問(wèn)題
案例:國(guó)家金稅三期的架構(gòu)設(shè)計(jì)
案例:阿里巴巴的架構(gòu)設(shè)計(jì)
2. 橫向拆分的設(shè)計(jì)思想及其注意的問(wèn)題
1)按地域拆分的設(shè)計(jì)及其評(píng)價(jià)
2)按用戶號(hào)進(jìn)行拆分的設(shè)計(jì)及其評(píng)價(jià)
案例:淘寶網(wǎng)的架構(gòu)設(shè)計(jì)解析
3. 在原有系統(tǒng)上如何實(shí)現(xiàn)數(shù)據(jù)庫(kù)分庫(kù)
1)縱向拆分的系統(tǒng)改造過(guò)程
2)橫向拆分的系統(tǒng)改造過(guò)程
第十一單元 應(yīng)用緩存的設(shè)計(jì)
應(yīng)用緩存技術(shù)
1. 應(yīng)用緩存技術(shù)解決的問(wèn)題
2. 單機(jī)緩存 vs. 分布式緩存
3. 分布式緩存的特點(diǎn)及其設(shè)計(jì)

Memcached技術(shù)
1. Memcached技術(shù)及其特點(diǎn)
2. 分布式哈希算法及其一致性哈希
3. Memcached的部署結(jié)構(gòu)及其應(yīng)用方案
案例:負(fù)載均衡的session同步及其故障轉(zhuǎn)移

如何在原有系統(tǒng)上進(jìn)行應(yīng)用緩存改造
1. Spring + Memcached的設(shè)計(jì)改造過(guò)程
2. Hibernate + Memcached的設(shè)計(jì)改造過(guò)程
3. Memcached的命中率分析及其調(diào)優(yōu)
4. 應(yīng)用緩存的設(shè)計(jì)過(guò)程中應(yīng)當(dāng)注意的問(wèn)題
第十二單元 內(nèi)存數(shù)據(jù)庫(kù)的設(shè)計(jì)
內(nèi)存數(shù)據(jù)庫(kù)技術(shù)
1. 內(nèi)存數(shù)據(jù)庫(kù)的概念
2. 解析內(nèi)存數(shù)據(jù)庫(kù)的運(yùn)行原理
3. Oracle TimesTen的介紹
4. Gemfire及其在12306的應(yīng)用

Redis內(nèi)存數(shù)據(jù)庫(kù)技術(shù)
1. Redis的運(yùn)行原理及其特點(diǎn)
2. Redis的部署形式
3. Redis的應(yīng)用設(shè)計(jì)
案例:spring-redis-data的設(shè)計(jì)應(yīng)用
案例:京東訂單系統(tǒng)的優(yōu)化過(guò)程
4. 內(nèi)存數(shù)據(jù)庫(kù)的設(shè)計(jì)局限
第十三單元 異步化操作的設(shè)計(jì)
1. 異步化操作的原理
案例:12306的異步化改造過(guò)程
2. 異步化操作的設(shè)計(jì)實(shí)踐
3. 分布式隊(duì)列的設(shè)計(jì)
第十四單元 互聯(lián)網(wǎng)不斷演進(jìn)的架構(gòu)設(shè)計(jì)過(guò)程
互聯(lián)網(wǎng)+時(shí)代的架構(gòu)設(shè)計(jì)特點(diǎn)
1. 互聯(lián)網(wǎng)+帶來(lái)的巨大變革
2. 互聯(lián)網(wǎng)公司不斷面對(duì)的升級(jí)改造
3. 傳統(tǒng)行業(yè)必須面對(duì)的互聯(lián)網(wǎng)轉(zhuǎn)型

好的架構(gòu)源于不斷的衍變
案例:58同城的架構(gòu)衍變過(guò)程
1. 最初的架構(gòu)設(shè)計(jì)
2. 網(wǎng)絡(luò)接入層的改造過(guò)程
3. 數(shù)據(jù)庫(kù)拆分的改造過(guò)程
4. 服務(wù)化為中心的改造過(guò)程
第十五單元 大并發(fā)架構(gòu)設(shè)計(jì)的驗(yàn)證
1. 設(shè)計(jì)測(cè)試用例與場(chǎng)景
2. 錄制測(cè)試腳本執(zhí)行測(cè)試
3. 測(cè)試結(jié)果的評(píng)價(jià)與調(diào)優(yōu)
4. 編寫性能測(cè)試報(bào)告
案例:某大型互聯(lián)網(wǎng)開票系統(tǒng)的架構(gòu)驗(yàn)證過(guò)程
第三部分針對(duì)大數(shù)據(jù)的架構(gòu)設(shè)計(jì)
第十六單元 NoSQL數(shù)據(jù)庫(kù)及其設(shè)計(jì)
NoSQL數(shù)據(jù)庫(kù)的概念
1. 分布式架構(gòu)與CAP理論
2. ACID vs. BASE
3. 強(qiáng)一致性與弱一致性
4. NoSQL數(shù)據(jù)庫(kù)的特點(diǎn)

MongoDB數(shù)據(jù)庫(kù)
1. MongoDB數(shù)據(jù)庫(kù)簡(jiǎn)介
2. MongoDB數(shù)據(jù)庫(kù)的概念模型
3. 插入、更新、刪除、查詢操作
案例:MongoDB實(shí)現(xiàn)企業(yè)征信報(bào)告的海量存儲(chǔ)與快速查詢
4. MongoDB數(shù)據(jù)庫(kù)的優(yōu)劣勢(shì)分析與適用范圍
第十七單元 Hadoop大數(shù)據(jù)處理技術(shù)
Hadoop大數(shù)據(jù)處理技術(shù)
1. Hadoop簡(jiǎn)介
2. Hadoop生態(tài)圈
3. Hadoop架構(gòu)及其與傳統(tǒng)架構(gòu)的優(yōu)勢(shì)

Hadoop的核心組件
1. 解析HDFS分布式文件系統(tǒng)的運(yùn)行原理
2. 解析MapReduce分布式運(yùn)算框架的運(yùn)行原理
3. MapReduce的優(yōu)劣勢(shì)與適用范圍
案例:WordCount詞頻計(jì)算程序的分析設(shè)計(jì)過(guò)程

Hadoop的生態(tài)圈
1. Hive技術(shù)
1)Hive技術(shù)簡(jiǎn)介
2)Hive與傳統(tǒng)關(guān)系型數(shù)據(jù)庫(kù)的比較
3)Hive的建表、載入數(shù)據(jù)、查詢數(shù)據(jù)的語(yǔ)句
2. Spark技術(shù)
1)Spark設(shè)計(jì)原理
2)Spark編程實(shí)踐
案例:Spark小步快跑的設(shè)計(jì)過(guò)程
3. Sqoop技術(shù)
1)Sqoop技術(shù)簡(jiǎn)介
2)Sqoop導(dǎo)入語(yǔ)句
3)Sqoop導(dǎo)出語(yǔ)句
4. HBase數(shù)據(jù)庫(kù)
1)HBase數(shù)據(jù)庫(kù)的簡(jiǎn)介
2)HBase數(shù)據(jù)庫(kù)的概念模型
3)HBase的面向列式存儲(chǔ)
4)HBase的系統(tǒng)架構(gòu)
案例:用HBase存儲(chǔ)與展示搜索結(jié)果
5. ElasticSearch搜索引擎
1)ElasticSearch設(shè)計(jì)原理
2)ElasticSearch+Hive的設(shè)計(jì)方案
3)ElasticSearch的RUSTful數(shù)據(jù)搜索
案例:如何實(shí)現(xiàn)海量數(shù)據(jù)秒級(jí)響應(yīng)

Hadoop的安裝部署
1. Hadoop的物理部署架構(gòu)
2. Hadoop的技術(shù)選型
3. Hadoop的組件部署結(jié)構(gòu)
第十八單元 面向主題的數(shù)據(jù)倉(cāng)庫(kù)設(shè)計(jì)
數(shù)據(jù)倉(cāng)庫(kù)的概念
1. 大范圍數(shù)據(jù)統(tǒng)計(jì)的操作特點(diǎn)與設(shè)計(jì)思路
2. 數(shù)據(jù)倉(cāng)庫(kù)的架構(gòu)設(shè)計(jì)

大數(shù)據(jù)環(huán)境下的數(shù)據(jù)倉(cāng)庫(kù)設(shè)計(jì)
1. 大數(shù)據(jù)環(huán)境下數(shù)據(jù)倉(cāng)庫(kù)設(shè)計(jì)面臨的困境
2. 講解海量數(shù)據(jù)的多維數(shù)據(jù)模型設(shè)計(jì)方案
案例:HBase實(shí)現(xiàn)大數(shù)據(jù)多維模型
案例:企業(yè)征信大數(shù)據(jù)的設(shè)計(jì)過(guò)程
3. 淺析數(shù)據(jù)挖掘與機(jī)器學(xué)習(xí)過(guò)程

傳統(tǒng)BI系統(tǒng)的大數(shù)據(jù)轉(zhuǎn)型
1. 傳統(tǒng)BI系統(tǒng)面臨的難題
2. 案例講解演化式BI轉(zhuǎn)型過(guò)程

課程費(fèi)用

6800.00 /人

課程時(shí)長(zhǎng)

3

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

近期公開課推薦

近期公開課推薦

活動(dòng)詳情

提交需求