第一部分 云計(jì)算架構(gòu) |
云概覽 |
- 為什么需要“云”
- 都有哪些云
- 云框架包括哪些內(nèi)容
- 如何構(gòu)建云
|
云計(jì)算平臺(tái)與云計(jì)算關(guān)鍵技術(shù) |
- 云計(jì)算平臺(tái)架構(gòu)
- 虛擬機(jī)與計(jì)算資源池:
- 分布式文件系統(tǒng)與存儲(chǔ)資源池
- 網(wǎng)絡(luò)虛擬化與網(wǎng)絡(luò)資源池
- 并行計(jì)算與Mapreduce
- 分布式海量存儲(chǔ)數(shù)據(jù)庫(kù)
- 云技術(shù)安全
|
三種云服務(wù) |
- IaaS云計(jì)算服務(wù)
- aaS服務(wù)內(nèi)容:存儲(chǔ)服務(wù)、計(jì)算服務(wù)
- IaaS案例
- IaaS解決方案
- PaaS云計(jì)算服務(wù)
- PaaS服務(wù)內(nèi)容:開(kāi)發(fā)服務(wù)、運(yùn)行服務(wù)
- PaaS案例
- PaaS解決方案:Google、vmvare、hadoop等
- SaaS云計(jì)算服務(wù)
|
基于云平臺(tái),構(gòu)建云應(yīng)用 |
- 云計(jì)算發(fā)展現(xiàn)狀和遇到的挑戰(zhàn)
- 如何有效地落在云端
- 從云平臺(tái)到應(yīng)用的工作路線圖
|
云平臺(tái)微服務(wù)架構(gòu) |
微服務(wù)架構(gòu)概述 |
什么是微服務(wù)架構(gòu)
微服務(wù)架構(gòu)是敏捷開(kāi)發(fā)的必然結(jié)果
1.單體應(yīng)用的優(yōu)勢(shì)與面臨的挑戰(zhàn)
- 案例:演示淘寶在系統(tǒng)不斷發(fā)展的過(guò)程中面臨的難題
- 許多系統(tǒng)在不斷發(fā)展過(guò)程中越來(lái)越龐大帶來(lái)的問(wèn)題
2.康威定律與人月神話
- 煙囪式的功能團(tuán)隊(duì)導(dǎo)致煙囪式的應(yīng)用
- 人員越來(lái)越多、溝通越來(lái)越困難、工作效率越來(lái)越低
3.未來(lái)快速變化的市場(chǎng)需要敏捷團(tuán)隊(duì)
- 更快地交付、更快地反饋、更快地產(chǎn)生價(jià)值
- 敏捷化的開(kāi)發(fā)團(tuán)隊(duì)呼喚微服務(wù)架構(gòu)
微服務(wù)是未來(lái)互聯(lián)網(wǎng)發(fā)展的必然結(jié)果
1.互聯(lián)網(wǎng)的發(fā)展及其面臨的挑戰(zhàn)
- 案例:分析淘寶近十年的發(fā)展及其面臨的挑戰(zhàn)
- 互聯(lián)網(wǎng)在面臨橫向擴(kuò)展、服務(wù)隔離等問(wèn)題的局限
2.微服務(wù)能夠更好地解決互聯(lián)網(wǎng)問(wèn)題
- 分析傳統(tǒng)架構(gòu)在解決互聯(lián)網(wǎng)問(wèn)題時(shí)采用的辦法
- 講解微服務(wù)架構(gòu)應(yīng)當(dāng)是什么樣子
- 剖析微服務(wù)架構(gòu)在解決諸多互聯(lián)網(wǎng)問(wèn)題時(shí)的思路
微服務(wù)架構(gòu)給測(cè)試與運(yùn)維帶來(lái)的挑戰(zhàn)
1.微服務(wù)架構(gòu)給測(cè)試帶來(lái)的挑戰(zhàn)
- 微服務(wù)架構(gòu)與持續(xù)集成
- 微服務(wù)架構(gòu)采用的測(cè)試工具
2.微服務(wù)架構(gòu)給運(yùn)維帶來(lái)的調(diào)整
- 微服務(wù)架構(gòu)與DevOps
- 微服務(wù)架構(gòu)的管理與發(fā)布過(guò)程
|
準(zhǔn)確認(rèn)識(shí)微服務(wù) |
關(guān)于微服務(wù)的誤解
1.微服務(wù) vs. SOA
案例:SOA在項(xiàng)目中的應(yīng)用
案例:微服務(wù)在項(xiàng)目中的應(yīng)用
微服務(wù)與SOA的聯(lián)系與差異
2.微服務(wù)架構(gòu)的本質(zhì)
- 由服務(wù)組件組成的系統(tǒng)
- 按照業(yè)務(wù)而不是技術(shù)來(lái)組織服務(wù)
- 做全生命周期的產(chǎn)品而不是項(xiàng)目
- 智能端點(diǎn)與通道扁平化
- 去中心化治理
- 去中心化數(shù)據(jù)管理
- 自動(dòng)化運(yùn)維(DevOps)
- 故障恢復(fù)與容錯(cuò)
- 演化式設(shè)計(jì)
案例:演示出租車調(diào)度系統(tǒng)的微服務(wù)設(shè)計(jì)過(guò)程
?
|
微服務(wù)架構(gòu)設(shè)計(jì) |
微服務(wù)常用架構(gòu) |
最簡(jiǎn)版的微服務(wù)架構(gòu)
1.服務(wù)注冊(cè)與發(fā)現(xiàn)
2.服務(wù)網(wǎng)關(guān)
3.微服務(wù)
4.配置管理
微服務(wù)常用的技術(shù)框架
1.Spring Cloud簡(jiǎn)介
2.Spring Boot簡(jiǎn)介
|
服務(wù)注冊(cè)與發(fā)現(xiàn) |
服務(wù)注冊(cè)與發(fā)現(xiàn)的概念與作用
實(shí)現(xiàn)服務(wù)注冊(cè)與發(fā)現(xiàn)的方案
1.Dubbo的簡(jiǎn)介
2.Zookeeper的簡(jiǎn)介
3.Netflix Eureka的簡(jiǎn)介
Spring Cloud Eureka方案
1.Spring Cloud Eureka的系統(tǒng)架構(gòu)
2.Eureka Server的設(shè)計(jì)
3.Eureka Client的設(shè)計(jì)
4.服務(wù)發(fā)現(xiàn)的設(shè)計(jì)
- 使用ribbon的設(shè)計(jì)
- 使用feign的設(shè)計(jì)
5.高可靠設(shè)計(jì)與Eureka集群
練習(xí):使用Eureka構(gòu)建微服務(wù)系統(tǒng) |
服務(wù)網(wǎng)關(guān) |
服務(wù)網(wǎng)關(guān)在微服務(wù)架構(gòu)中的作用
1.多渠道用戶接入
- 微服務(wù)前后端分離的架構(gòu)設(shè)計(jì)
2.微服務(wù)的負(fù)載均衡
3.路由網(wǎng)關(guān)(zuul)
- 藍(lán)綠發(fā)布、滾動(dòng)發(fā)布、灰度發(fā)布與金絲雀發(fā)布
- 權(quán)限驗(yàn)證與安全保障
- 路由網(wǎng)關(guān)的設(shè)計(jì)實(shí)現(xiàn)
4.熔斷機(jī)制與服務(wù)降級(jí)
- 斷路器設(shè)計(jì)模式
- 線程池隔離、優(yōu)雅降級(jí)與熔斷
- Hystrix的斷路器設(shè)計(jì)
5.流量控制與節(jié)流
練習(xí):設(shè)計(jì)服務(wù)網(wǎng)關(guān)、路由網(wǎng)關(guān)與斷路器 |
微服務(wù)層的設(shè)計(jì) |
微服務(wù)架構(gòu)的6種設(shè)計(jì)模式
1.聚合模式
- 互聯(lián)網(wǎng)縱向切分在微服務(wù)的實(shí)現(xiàn)
- 縱向切分應(yīng)當(dāng)注意的設(shè)計(jì)問(wèn)題
- 避免跨庫(kù)關(guān)聯(lián)查詢的設(shè)計(jì)
- 采用分布式事務(wù)解決跨庫(kù)的事務(wù)操作
2.代理模式
- 互聯(lián)網(wǎng)橫向切分與讀寫分離在微服務(wù)的實(shí)現(xiàn)
3.鏈?zhǔn)侥J?/strong>
- 復(fù)雜應(yīng)用場(chǎng)景與生產(chǎn)流水線的設(shè)計(jì)思路
4.分支模式
5.數(shù)據(jù)共享模式
6.異步消息模式
案例:微服務(wù)實(shí)現(xiàn)異步化操作
微服務(wù)的粒度
1.微服務(wù)的拆分原則
2.微服務(wù)的拆分方式
微服務(wù)設(shè)計(jì)的反模式
1.太多數(shù)據(jù)遷移
2.數(shù)據(jù)共享反模式
3.頻繁交互反模式
探討:如何解決微服務(wù)接口太多的問(wèn)題
?
|
Docker與容器技術(shù) |
Docker簡(jiǎn)介
1.Docker vs. 虛擬化
2.Docker的運(yùn)行方式
3.Docker的基本操作
將微服務(wù)部署到Docker中
演練:微服務(wù)在Docker中的部署過(guò)程
?
|
配置管理與DevOps |
DevOps簡(jiǎn)介
1.微服務(wù)為什么需要DevOps
2.微服務(wù)的測(cè)試過(guò)程
3.微服務(wù)的發(fā)布過(guò)程
微服務(wù)配置中心
1.Spring Cloud Config的配置過(guò)程
2.Spring Cloud Config的發(fā)布過(guò)程
微服務(wù)的分布式運(yùn)維
1.Kubernetes簡(jiǎn)介
2.用Kubernetes進(jìn)行分布式運(yùn)維
探討:如何構(gòu)建一個(gè)微服務(wù)運(yùn)營(yíng)平臺(tái)
?
|
基于云平臺(tái)和微服務(wù)的設(shè)計(jì)
|
領(lǐng)域驅(qū)動(dòng)設(shè)計(jì) |
所有軟件企業(yè)不得不面對(duì)的問(wèn)題
1.我們現(xiàn)在面對(duì)的是快速變化的時(shí)代
2.軟件研發(fā)卻出現(xiàn)了問(wèn)題:
變更越頻繁,代碼質(zhì)量下降越快
案例:演示電商網(wǎng)站付款功能代碼質(zhì)量下降的過(guò)程
3.揭示軟件退化的根源
案例:演示軟件退化的過(guò)程與高質(zhì)量設(shè)計(jì)的過(guò)程
深度解讀高內(nèi)聚與單一職責(zé)原則
領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)
- 軟件變更過(guò)程中的設(shè)計(jì)難題
- 領(lǐng)域驅(qū)動(dòng)的設(shè)計(jì)思想
- 案例:重新演練電商網(wǎng)站付款功能的變更過(guò)程
軟件架構(gòu)如何支持領(lǐng)域驅(qū)動(dòng)
1.架構(gòu)調(diào)整不是件簡(jiǎn)單的事兒
如何實(shí)現(xiàn)業(yè)務(wù)領(lǐng)域?qū)优c技術(shù)框架的解耦
如何簡(jiǎn)化業(yè)務(wù)實(shí)現(xiàn)的過(guò)程
2.架構(gòu)設(shè)計(jì)如何支持領(lǐng)域驅(qū)動(dòng)
增刪改如何支持領(lǐng)域驅(qū)動(dòng)
查詢?nèi)绾沃С诸I(lǐng)域驅(qū)動(dòng)
3.微服務(wù)架構(gòu)如何支持領(lǐng)域驅(qū)動(dòng)
案例:一個(gè)簡(jiǎn)單、易于開(kāi)發(fā)的微服務(wù)架構(gòu)
如何實(shí)現(xiàn)前端微服務(wù)化的設(shè)計(jì) |
傳統(tǒng)架構(gòu)的云平臺(tái)與微服務(wù)轉(zhuǎn)型 |
傳統(tǒng)架構(gòu)云平臺(tái)與微服務(wù)轉(zhuǎn)型的過(guò)程
1.技術(shù)轉(zhuǎn)型
準(zhǔn)備工作:Maven→Spring boot
整理分層:MVC層與BUS層的分離
建立微服務(wù):注冊(cè)中心、服務(wù)網(wǎng)關(guān)與微服務(wù)
2.業(yè)務(wù)拆分
構(gòu)建領(lǐng)域模型與限界上下文
業(yè)務(wù)與數(shù)據(jù)庫(kù)的縱向切分
初創(chuàng)型企業(yè)的微服務(wù)建設(shè)過(guò)程
案例:某智慧醫(yī)療系統(tǒng)的建設(shè)過(guò)程
1.系統(tǒng)的建設(shè)規(guī)劃
2.系統(tǒng)的分析設(shè)計(jì)過(guò)程
3.微服務(wù)架構(gòu)設(shè)計(jì)與對(duì)外接口
4.微服務(wù)運(yùn)營(yíng)平臺(tái)的建設(shè)
成熟型企業(yè)開(kāi)展云平臺(tái)與微服務(wù)的思路
1.成熟企業(yè)開(kāi)展云平臺(tái)與微服務(wù)的難題
2.記錄型系統(tǒng) vs. 交互型系統(tǒng)
3.在混合云中構(gòu)建交互型系統(tǒng)
案例:某金融企業(yè)向微服務(wù)轉(zhuǎn)型的過(guò)程
大數(shù)據(jù)+微服務(wù)的轉(zhuǎn)型過(guò)程
案例:某BI系統(tǒng)的云平臺(tái)+大數(shù)據(jù)+微服務(wù)的轉(zhuǎn)型過(guò)程
1.該BI系統(tǒng)的背景介紹
2.互聯(lián)網(wǎng)轉(zhuǎn)型帶來(lái)的機(jī)遇與挑戰(zhàn)
3.大數(shù)據(jù)的轉(zhuǎn)型過(guò)程
4.微服務(wù)的轉(zhuǎn)型過(guò)程
5.構(gòu)建分析模型Store平臺(tái)
探討:大數(shù)據(jù)如何與微服務(wù)相結(jié)合 |