課程簡(jiǎn)介
本課程從實(shí)踐的角度出發(fā),首先闡述了單塊架構(gòu)存在的弊端以及微服務(wù)的理論基礎(chǔ)。接著通過(guò)實(shí)踐部分,讓讀者能夠體驗(yàn)從零開(kāi)始搭建第一個(gè)微服務(wù)的過(guò)程,包括代碼靜態(tài)檢查、基礎(chǔ)設(shè)施構(gòu)建、 Docker映像構(gòu)建及部署、持續(xù)交付流水線、服務(wù)的日志聚合以及監(jiān)控和告警。
目標(biāo)收益
探討在微服務(wù)的實(shí)踐過(guò)程中所積累的經(jīng)驗(yàn),包括基于 HAL的通信機(jī)制、消費(fèi)者驅(qū)動(dòng)的測(cè)試,并通過(guò)一個(gè)真實(shí)的案例,幫助讀者更好地理解微服務(wù)架構(gòu)所帶來(lái)的靈活性、易擴(kuò)展性和獨(dú)立性。
培訓(xùn)對(duì)象
該課程適應(yīng)于各類技術(shù)人員.細(xì)粒度的微服務(wù)架構(gòu)包含了很多方面的內(nèi)容,所以本課程涉及范圍很廣,適用于對(duì)系統(tǒng)的設(shè)計(jì)、開(kāi)發(fā)、部署、測(cè)試和運(yùn)維感興趣的人們。對(duì)于那些已經(jīng)走上更細(xì)粒度架構(gòu)之路的人,無(wú)論是開(kāi)發(fā)新應(yīng)用,還是拆分現(xiàn)有的單塊系統(tǒng),都會(huì)因課程里很多的實(shí)用建議而受益。對(duì)于想要了解微服務(wù)方方面面的人,也可以幫助你確定微服務(wù)是否適合你。
課程大綱
第1單元 微服務(wù)架構(gòu)概述 |
內(nèi)容一:微服務(wù)架構(gòu)誕生—為什么出現(xiàn)微服務(wù)架構(gòu) 1.單塊架構(gòu)及其面臨的挑戰(zhàn) 2.分層應(yīng)用架構(gòu) 3.單塊架構(gòu)特點(diǎn) 4.單塊架構(gòu)面臨的挑戰(zhàn) 5.通過(guò)某傳統(tǒng)ERP系統(tǒng)為案例分析上線后問(wèn)題 內(nèi)容二:微服務(wù)架構(gòu) 1.為什么需要微服務(wù)架構(gòu) 2.如何解決傳統(tǒng)應(yīng)用架構(gòu)的問(wèn)題 3.微服務(wù)架構(gòu)是什么 4.微服務(wù)架構(gòu)概念 5.微服務(wù)架構(gòu)參考架構(gòu)模式 6.通過(guò)分析多個(gè)微服務(wù)架構(gòu)案例,了解微服務(wù)架構(gòu)的參考模式 |
第2單元-微服務(wù)架構(gòu)—服務(wù)分解和建模 |
內(nèi)容一:微服務(wù)分解和服務(wù)顆粒度 1.微服務(wù)架構(gòu)構(gòu)成(服務(wù)拆分、服務(wù)拓?fù)潢P(guān)系圖); 2.微服務(wù)架構(gòu)設(shè)計(jì)原則; 3.微服務(wù)架構(gòu)服務(wù)粒度設(shè)計(jì); 4.微服務(wù)架構(gòu)之我們的實(shí)踐案例; 5.通過(guò)大量項(xiàng)目案例分析,什么是好的服務(wù),服務(wù)的分解和服務(wù)顆粒度 內(nèi)容二:微服務(wù)建模 1.如何建模服務(wù) 2.什么樣的服務(wù)是好服務(wù) 3.微服務(wù)的松耦合和高內(nèi)聚 4.微服務(wù)限界上下文 5.微服務(wù)的業(yè)務(wù)功能 6.逐步劃分服務(wù)上下文 7.微服務(wù)與業(yè)務(wù)概念 8.微服務(wù)技術(shù)邊界 9.通過(guò)案例分析微服務(wù)建模 |
第3單元-微服務(wù)架構(gòu)設(shè)計(jì)開(kāi)發(fā)實(shí)現(xiàn)—基于SpringBoot和SpringCloud 動(dòng)手實(shí)現(xiàn)一個(gè)完整的微服務(wù) |
內(nèi)容一:微服務(wù)架構(gòu)開(kāi)發(fā)實(shí)現(xiàn)---SpringBoot 1.Spring Boot概述 2.運(yùn)用Spring Boot 3.Groovy與Spring Boot CLI 4.在Spring Boot中使用Grails 5.深入Actuator 6.部署Spring Boot應(yīng)用程序 7.Spring Boot 的數(shù)據(jù)訪問(wèn) 8.Spring Boot 企業(yè)級(jí)開(kāi)發(fā) 9.Spring Boot 開(kāi)發(fā)部署與測(cè)試 10.多個(gè)基于SpringBoot實(shí)際項(xiàng)目的架構(gòu)分析(為何這樣設(shè)計(jì)/優(yōu)點(diǎn)/缺點(diǎn)/當(dāng)初的考慮) 內(nèi)容二:微服務(wù)架構(gòu)與云架構(gòu)--Spring Cloud平臺(tái) 1.云計(jì)算平臺(tái)架構(gòu) 2.為什么選擇Spring Cloud 3.Spring Cloud 4.服務(wù)治理:Spring Cloud Eureka 5.客戶端負(fù)載均衡:Spring Cloud Ribbon 6.服務(wù)容錯(cuò)保護(hù):Spring Cloud Hystrix 7.聲明式服務(wù)調(diào)用:Spring Cloud Feign 8.分布式配置中心:Spring Cloud Config 9.消息總線:Spring Cloud Bus 10.多個(gè)基于SpringBoot和SpringCloud云架構(gòu),談微服務(wù)和云架構(gòu)內(nèi)容一:微服務(wù)架構(gòu)開(kāi)發(fā)實(shí)現(xiàn)---SpringBoot 1.Spring Boot概述 2.運(yùn)用Spring Boot 3.Groovy與Spring Boot CLI 4.在Spring Boot中使用Grails 5.深入Actuator 6.部署Spring Boot應(yīng)用程序 7.Spring Boot 的數(shù)據(jù)訪問(wèn) 8.Spring Boot 企業(yè)級(jí)開(kāi)發(fā) 9.Spring Boot 開(kāi)發(fā)部署與測(cè)試 10.多個(gè)基于SpringBoot實(shí)際項(xiàng)目的架構(gòu)分析(為何這樣設(shè)計(jì)/優(yōu)點(diǎn)/缺點(diǎn)/當(dāng)初的考慮) 內(nèi)容二:微服務(wù)架構(gòu)與云架構(gòu)--Spring Cloud平臺(tái) 1.云計(jì)算平臺(tái)架構(gòu) 2.為什么選擇Spring Cloud 3.Spring Cloud 4.服務(wù)治理:Spring Cloud Eureka 5.客戶端負(fù)載均衡:Spring Cloud Ribbon 6.服務(wù)容錯(cuò)保護(hù):Spring Cloud Hystrix 7.聲明式服務(wù)調(diào)用:Spring Cloud Feign 8.分布式配置中心:Spring Cloud Config 9.消息總線:Spring Cloud Bus 10.多個(gè)基于SpringBoot和SpringCloud云架構(gòu),談微服務(wù)和云架構(gòu) |
第4單元--微服務(wù)架構(gòu)基礎(chǔ)框架和平臺(tái) |
內(nèi)容一:微服務(wù)基礎(chǔ)\平臺(tái) 1.微服務(wù)架構(gòu)設(shè)計(jì)之開(kāi)發(fā)框架選擇(Spring Boot); 2.微服務(wù)架構(gòu)設(shè)計(jì)之容器選擇(Docker); 3.微服務(wù)架構(gòu)設(shè)計(jì)之服務(wù)注冊(cè)選擇(Zookeeper、Etcd、Consul); 4.微服務(wù)架構(gòu)設(shè)計(jì)之服務(wù)網(wǎng)關(guān)選擇(Nginx、Node.js、Netflix Zuul); 5.微服務(wù)架構(gòu)設(shè)計(jì)之自動(dòng)化部署選擇(Jenkins、GitLab CI); 6.微服務(wù)的安全機(jī)制與OAuth2.0實(shí)現(xiàn) 7.微服務(wù)架構(gòu)設(shè)計(jì)之最佳實(shí)踐案例; |
第5單元--微服務(wù)注冊(cè)與發(fā)現(xiàn),服務(wù)路由,統(tǒng)一配置中心 |
內(nèi)容一:微服務(wù)注冊(cè)與發(fā)現(xiàn) 1.為什么要服務(wù)注冊(cè) 2.服務(wù)注冊(cè)實(shí)現(xiàn)方式 3.使用NetflixEureka/SpringCloud實(shí)現(xiàn)服務(wù)注冊(cè) 4.使用NetflixRibbon/SpringCloud實(shí)現(xiàn)客戶端負(fù)載均衡 5.為什么要服務(wù)發(fā)現(xiàn) 6.服務(wù)發(fā)現(xiàn)的實(shí)現(xiàn)方式 7.使用Spring和Netflix Eureka進(jìn)行服務(wù)發(fā)現(xiàn)實(shí)戰(zhàn) 內(nèi)容二:微服務(wù)負(fù)載均衡和路由,容錯(cuò) 1.負(fù)載均衡 2.容錯(cuò) 3.服務(wù)路由 4.微服務(wù)間的異步通信機(jī)制 5.Spring Clould 的Ribbon實(shí)現(xiàn) 內(nèi)容三:分布式微服務(wù)統(tǒng)一配置中心 1.管理配置(和復(fù)雜性) 2.配置管理架構(gòu) 3.構(gòu)建Spring Cloud配置服務(wù)器 4.將Spring Cloud Config與Spring Boot客戶端集成 5.分布式配置中心——攜程Apollo 6.攜程apollo優(yōu)點(diǎn) 7.apollo架構(gòu) 8.Apollo分布式配置中心部署 9.Apollo分布式配置中心最佳實(shí)踐 |
第6單元--微服務(wù)網(wǎng)關(guān)和過(guò)載保護(hù) |
內(nèi)容一:微服務(wù)網(wǎng)關(guān)—Zuul 1.使用Spring Cloud和Zuul進(jìn)行服務(wù)路由 2.什么是服務(wù)網(wǎng)關(guān) 3.Spring Cloud和Netflix Zuul簡(jiǎn)介 4.在Zuul中配置路由 5.動(dòng)態(tài)重新加載路由配置 6.構(gòu)建第 一個(gè)生成關(guān)聯(lián)ID的Zuul前置過(guò)濾器 7.構(gòu)建動(dòng)態(tài)路由過(guò)濾器 8.Zuul網(wǎng)關(guān)最佳實(shí)踐 內(nèi)容二:微服務(wù)斷路器—Hystrix 1.什么是客戶端彈性模式 2.客戶端負(fù)載均衡模式 3.斷路器模式 4.后備模式 5.艙壁模式 6.使用Hystrix實(shí)現(xiàn)斷路器 7.對(duì)組織微服務(wù)的調(diào)用超時(shí) 8.定制斷路器的超時(shí)時(shí)間 9.線程上下文和Hystrix 10.Hystrix最佳實(shí)踐 |
第7單元--微服務(wù)交付與測(cè)試 |
內(nèi)容一:微服務(wù)測(cè)試-持續(xù)集成與測(cè)試 1.微服務(wù)測(cè)試 2.實(shí)現(xiàn)服務(wù)測(cè)試 3.端到端測(cè)試的缺點(diǎn) 4.跨功能的測(cè)試 5.微服務(wù)的測(cè)試策略與PACT測(cè)試 6.微服務(wù)測(cè)試案例分析 內(nèi)容二:微服務(wù)發(fā)布 1.微服務(wù)架構(gòu)如何代碼控制? 2.微服務(wù)架構(gòu)自動(dòng)化測(cè)試? 3.微服務(wù)架構(gòu)如何預(yù)先發(fā)布驗(yàn)證? 4.微服務(wù)架構(gòu)如何灰度發(fā)布? 5.微服務(wù)架構(gòu)如何自動(dòng)化發(fā)布? 6.使用Docker發(fā)布服務(wù); 7..使用Docker-Compose在開(kāi)發(fā)環(huán)境中運(yùn)行多個(gè)服務(wù) 8.微服務(wù)架構(gòu)設(shè)計(jì)軟件質(zhì)量保證最佳實(shí)踐是什么 |
第8單元--微服務(wù)架構(gòu)運(yùn)維與監(jiān)控 |
內(nèi)容一:微服務(wù)運(yùn)維和監(jiān)控 1.微服務(wù)系統(tǒng)設(shè)計(jì)監(jiān)控重要性? 2.微服務(wù)系統(tǒng)設(shè)計(jì)監(jiān)控?cái)?shù)據(jù)采集方法是什么? 3.微服務(wù)系統(tǒng)設(shè)計(jì)如何監(jiān)控設(shè)計(jì)? 4.微服務(wù)系統(tǒng)語(yǔ)義監(jiān)控如何做? 5.微服務(wù)系統(tǒng)進(jìn)程監(jiān)控如何做? 6.微服務(wù)系統(tǒng)錯(cuò)誤日志監(jiān)控如何做? 7.微服務(wù)系統(tǒng)設(shè)計(jì)監(jiān)控的最佳實(shí)踐是什么? 8.最佳實(shí)踐與案例分析 |
第9單元--微服務(wù)分布式事務(wù)和日志監(jiān)控 |
內(nèi)容一:微服務(wù)分布式事務(wù) 1.本地事務(wù)-JDBC實(shí)現(xiàn) 2.XA和兩階段事務(wù)協(xié)議 3.J2EE分布式事務(wù) 4.Spring框架與分布式事務(wù) 5.CAP原則和BASE原則 6.微服務(wù)事務(wù)一致性實(shí)現(xiàn)策略 7.TCC與分布式微服務(wù)架構(gòu)事務(wù) 8.分布式微服務(wù)架構(gòu)最佳實(shí)踐 內(nèi)容二:大型微服務(wù)分布式日志 1.大數(shù)據(jù)日志系統(tǒng)的構(gòu)建 2.開(kāi)源日志框架的原理分析與應(yīng)用實(shí)踐 3.ELK系統(tǒng)的構(gòu)建與使用 4.Elasticsearch 5.Logstash 6.Kibana 7.大數(shù)據(jù)日志系統(tǒng)的原理與設(shè)計(jì) 8.日志系統(tǒng)的容量和性能評(píng)估 內(nèi)容三:微服務(wù)分布式跟蹤系統(tǒng)—大眾點(diǎn)評(píng)CAT 1.基于調(diào)用鏈的服務(wù)治理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 2.調(diào)用鏈跟蹤的原理 3. 分布式系統(tǒng)的遠(yuǎn)程調(diào)用過(guò)程 4.Google Dapper實(shí)現(xiàn) 5.大眾點(diǎn)評(píng)CAT案例分析 6.CAT實(shí)現(xiàn)原理 7.CAT部署策略 8.CAT最佳實(shí)踐 內(nèi)容一:大型分布式架構(gòu)核心概念 1.典型大規(guī)?;ヂ?lián)網(wǎng)系統(tǒng)架構(gòu) 2.可用性的概念以及設(shè)計(jì)準(zhǔn)則 3.擴(kuò)展性的概念以及設(shè)計(jì)準(zhǔn)則 4.負(fù)載均衡的概念以及設(shè)計(jì)準(zhǔn)? 5.一致性的概念以及設(shè)計(jì)準(zhǔn)則 6.通過(guò)大量案例分析以上原則 內(nèi)容二:降級(jí)設(shè)計(jì)與實(shí)踐 1.服務(wù)限流降級(jí)概念; 2.服務(wù)限流降級(jí)使用業(yè)務(wù)場(chǎng)景; 3.服務(wù)限流降級(jí)設(shè)計(jì)環(huán)節(jié); 4.服務(wù)限流降級(jí)之原則篇、架構(gòu)篇、框架篇、業(yè)務(wù)篇; 5.移動(dòng)時(shí)代服務(wù)限流降級(jí)如何打造; 6.我們的實(shí)踐案例; 內(nèi)容三:高可用性設(shè)計(jì) 1.可用性一般度量 2.可用性實(shí)踐 3.平均故障間隔時(shí)間(MTBF) 4.平均修復(fù)時(shí)間 5.錯(cuò)誤和缺陷率 6.高可用性原則 1: Remember Everything Fails 7.高可用性原則 2: Automate Everything 8.可用性最佳實(shí)踐-1-錯(cuò)誤檢測(cè) 9.可用性最佳實(shí)踐-2-錯(cuò)誤隔離/恢復(fù)/降級(jí)或掩蓋 10.可用性最佳實(shí)踐-3-錯(cuò)誤預(yù)防 11.機(jī)器故障自動(dòng)修復(fù) 12.資源故障自動(dòng)遷移 13.服務(wù)故障容災(zāi)降級(jí) 14.業(yè)務(wù)容量自動(dòng)調(diào)整 15.架構(gòu)設(shè)計(jì)預(yù)防; |
第10單元--大型分布式架構(gòu)設(shè)計(jì)最佳實(shí)踐 |
內(nèi)容一:使用微服務(wù)架構(gòu)改造遺留系統(tǒng) 1.背景與挑戰(zhàn) 2.改造策略 3.逐步替換微服務(wù) 4.功能剝離和封裝 5.依賴數(shù)據(jù)解耦和基礎(chǔ)數(shù)據(jù)共享 6.通過(guò)案例分析微服務(wù)架構(gòu)改造 |
第11單元--使用微服務(wù)架構(gòu)改造遺留系統(tǒng) |
內(nèi)容一:使用微服務(wù)架構(gòu)改造遺留系統(tǒng) 1.背景與挑戰(zhàn) 2.改造策略 3.逐步替換微服務(wù) 4.功能剝離和封裝 5.依賴數(shù)據(jù)解耦和基礎(chǔ)數(shù)據(jù)共享 6.通過(guò)案例分析微服務(wù)架構(gòu)改造 |
第1單元 微服務(wù)架構(gòu)概述 內(nèi)容一:微服務(wù)架構(gòu)誕生—為什么出現(xiàn)微服務(wù)架構(gòu) 1.單塊架構(gòu)及其面臨的挑戰(zhàn) 2.分層應(yīng)用架構(gòu) 3.單塊架構(gòu)特點(diǎn) 4.單塊架構(gòu)面臨的挑戰(zhàn) 5.通過(guò)某傳統(tǒng)ERP系統(tǒng)為案例分析上線后問(wèn)題 內(nèi)容二:微服務(wù)架構(gòu) 1.為什么需要微服務(wù)架構(gòu) 2.如何解決傳統(tǒng)應(yīng)用架構(gòu)的問(wèn)題 3.微服務(wù)架構(gòu)是什么 4.微服務(wù)架構(gòu)概念 5.微服務(wù)架構(gòu)參考架構(gòu)模式 6.通過(guò)分析多個(gè)微服務(wù)架構(gòu)案例,了解微服務(wù)架構(gòu)的參考模式 |
第2單元-微服務(wù)架構(gòu)—服務(wù)分解和建模 內(nèi)容一:微服務(wù)分解和服務(wù)顆粒度 1.微服務(wù)架構(gòu)構(gòu)成(服務(wù)拆分、服務(wù)拓?fù)潢P(guān)系圖); 2.微服務(wù)架構(gòu)設(shè)計(jì)原則; 3.微服務(wù)架構(gòu)服務(wù)粒度設(shè)計(jì); 4.微服務(wù)架構(gòu)之我們的實(shí)踐案例; 5.通過(guò)大量項(xiàng)目案例分析,什么是好的服務(wù),服務(wù)的分解和服務(wù)顆粒度 內(nèi)容二:微服務(wù)建模 1.如何建模服務(wù) 2.什么樣的服務(wù)是好服務(wù) 3.微服務(wù)的松耦合和高內(nèi)聚 4.微服務(wù)限界上下文 5.微服務(wù)的業(yè)務(wù)功能 6.逐步劃分服務(wù)上下文 7.微服務(wù)與業(yè)務(wù)概念 8.微服務(wù)技術(shù)邊界 9.通過(guò)案例分析微服務(wù)建模 |
第3單元-微服務(wù)架構(gòu)設(shè)計(jì)開(kāi)發(fā)實(shí)現(xiàn)—基于SpringBoot和SpringCloud 動(dòng)手實(shí)現(xiàn)一個(gè)完整的微服務(wù) 內(nèi)容一:微服務(wù)架構(gòu)開(kāi)發(fā)實(shí)現(xiàn)---SpringBoot 1.Spring Boot概述 2.運(yùn)用Spring Boot 3.Groovy與Spring Boot CLI 4.在Spring Boot中使用Grails 5.深入Actuator 6.部署Spring Boot應(yīng)用程序 7.Spring Boot 的數(shù)據(jù)訪問(wèn) 8.Spring Boot 企業(yè)級(jí)開(kāi)發(fā) 9.Spring Boot 開(kāi)發(fā)部署與測(cè)試 10.多個(gè)基于SpringBoot實(shí)際項(xiàng)目的架構(gòu)分析(為何這樣設(shè)計(jì)/優(yōu)點(diǎn)/缺點(diǎn)/當(dāng)初的考慮) 內(nèi)容二:微服務(wù)架構(gòu)與云架構(gòu)--Spring Cloud平臺(tái) 1.云計(jì)算平臺(tái)架構(gòu) 2.為什么選擇Spring Cloud 3.Spring Cloud 4.服務(wù)治理:Spring Cloud Eureka 5.客戶端負(fù)載均衡:Spring Cloud Ribbon 6.服務(wù)容錯(cuò)保護(hù):Spring Cloud Hystrix 7.聲明式服務(wù)調(diào)用:Spring Cloud Feign 8.分布式配置中心:Spring Cloud Config 9.消息總線:Spring Cloud Bus 10.多個(gè)基于SpringBoot和SpringCloud云架構(gòu),談微服務(wù)和云架構(gòu)內(nèi)容一:微服務(wù)架構(gòu)開(kāi)發(fā)實(shí)現(xiàn)---SpringBoot 1.Spring Boot概述 2.運(yùn)用Spring Boot 3.Groovy與Spring Boot CLI 4.在Spring Boot中使用Grails 5.深入Actuator 6.部署Spring Boot應(yīng)用程序 7.Spring Boot 的數(shù)據(jù)訪問(wèn) 8.Spring Boot 企業(yè)級(jí)開(kāi)發(fā) 9.Spring Boot 開(kāi)發(fā)部署與測(cè)試 10.多個(gè)基于SpringBoot實(shí)際項(xiàng)目的架構(gòu)分析(為何這樣設(shè)計(jì)/優(yōu)點(diǎn)/缺點(diǎn)/當(dāng)初的考慮) 內(nèi)容二:微服務(wù)架構(gòu)與云架構(gòu)--Spring Cloud平臺(tái) 1.云計(jì)算平臺(tái)架構(gòu) 2.為什么選擇Spring Cloud 3.Spring Cloud 4.服務(wù)治理:Spring Cloud Eureka 5.客戶端負(fù)載均衡:Spring Cloud Ribbon 6.服務(wù)容錯(cuò)保護(hù):Spring Cloud Hystrix 7.聲明式服務(wù)調(diào)用:Spring Cloud Feign 8.分布式配置中心:Spring Cloud Config 9.消息總線:Spring Cloud Bus 10.多個(gè)基于SpringBoot和SpringCloud云架構(gòu),談微服務(wù)和云架構(gòu) |
第4單元--微服務(wù)架構(gòu)基礎(chǔ)框架和平臺(tái) 內(nèi)容一:微服務(wù)基礎(chǔ)\平臺(tái) 1.微服務(wù)架構(gòu)設(shè)計(jì)之開(kāi)發(fā)框架選擇(Spring Boot); 2.微服務(wù)架構(gòu)設(shè)計(jì)之容器選擇(Docker); 3.微服務(wù)架構(gòu)設(shè)計(jì)之服務(wù)注冊(cè)選擇(Zookeeper、Etcd、Consul); 4.微服務(wù)架構(gòu)設(shè)計(jì)之服務(wù)網(wǎng)關(guān)選擇(Nginx、Node.js、Netflix Zuul); 5.微服務(wù)架構(gòu)設(shè)計(jì)之自動(dòng)化部署選擇(Jenkins、GitLab CI); 6.微服務(wù)的安全機(jī)制與OAuth2.0實(shí)現(xiàn) 7.微服務(wù)架構(gòu)設(shè)計(jì)之最佳實(shí)踐案例; |
第5單元--微服務(wù)注冊(cè)與發(fā)現(xiàn),服務(wù)路由,統(tǒng)一配置中心 內(nèi)容一:微服務(wù)注冊(cè)與發(fā)現(xiàn) 1.為什么要服務(wù)注冊(cè) 2.服務(wù)注冊(cè)實(shí)現(xiàn)方式 3.使用NetflixEureka/SpringCloud實(shí)現(xiàn)服務(wù)注冊(cè) 4.使用NetflixRibbon/SpringCloud實(shí)現(xiàn)客戶端負(fù)載均衡 5.為什么要服務(wù)發(fā)現(xiàn) 6.服務(wù)發(fā)現(xiàn)的實(shí)現(xiàn)方式 7.使用Spring和Netflix Eureka進(jìn)行服務(wù)發(fā)現(xiàn)實(shí)戰(zhàn) 內(nèi)容二:微服務(wù)負(fù)載均衡和路由,容錯(cuò) 1.負(fù)載均衡 2.容錯(cuò) 3.服務(wù)路由 4.微服務(wù)間的異步通信機(jī)制 5.Spring Clould 的Ribbon實(shí)現(xiàn) 內(nèi)容三:分布式微服務(wù)統(tǒng)一配置中心 1.管理配置(和復(fù)雜性) 2.配置管理架構(gòu) 3.構(gòu)建Spring Cloud配置服務(wù)器 4.將Spring Cloud Config與Spring Boot客戶端集成 5.分布式配置中心——攜程Apollo 6.攜程apollo優(yōu)點(diǎn) 7.apollo架構(gòu) 8.Apollo分布式配置中心部署 9.Apollo分布式配置中心最佳實(shí)踐 |
第6單元--微服務(wù)網(wǎng)關(guān)和過(guò)載保護(hù) 內(nèi)容一:微服務(wù)網(wǎng)關(guān)—Zuul 1.使用Spring Cloud和Zuul進(jìn)行服務(wù)路由 2.什么是服務(wù)網(wǎng)關(guān) 3.Spring Cloud和Netflix Zuul簡(jiǎn)介 4.在Zuul中配置路由 5.動(dòng)態(tài)重新加載路由配置 6.構(gòu)建第 一個(gè)生成關(guān)聯(lián)ID的Zuul前置過(guò)濾器 7.構(gòu)建動(dòng)態(tài)路由過(guò)濾器 8.Zuul網(wǎng)關(guān)最佳實(shí)踐 內(nèi)容二:微服務(wù)斷路器—Hystrix 1.什么是客戶端彈性模式 2.客戶端負(fù)載均衡模式 3.斷路器模式 4.后備模式 5.艙壁模式 6.使用Hystrix實(shí)現(xiàn)斷路器 7.對(duì)組織微服務(wù)的調(diào)用超時(shí) 8.定制斷路器的超時(shí)時(shí)間 9.線程上下文和Hystrix 10.Hystrix最佳實(shí)踐 |
第7單元--微服務(wù)交付與測(cè)試 內(nèi)容一:微服務(wù)測(cè)試-持續(xù)集成與測(cè)試 1.微服務(wù)測(cè)試 2.實(shí)現(xiàn)服務(wù)測(cè)試 3.端到端測(cè)試的缺點(diǎn) 4.跨功能的測(cè)試 5.微服務(wù)的測(cè)試策略與PACT測(cè)試 6.微服務(wù)測(cè)試案例分析 內(nèi)容二:微服務(wù)發(fā)布 1.微服務(wù)架構(gòu)如何代碼控制? 2.微服務(wù)架構(gòu)自動(dòng)化測(cè)試? 3.微服務(wù)架構(gòu)如何預(yù)先發(fā)布驗(yàn)證? 4.微服務(wù)架構(gòu)如何灰度發(fā)布? 5.微服務(wù)架構(gòu)如何自動(dòng)化發(fā)布? 6.使用Docker發(fā)布服務(wù); 7..使用Docker-Compose在開(kāi)發(fā)環(huán)境中運(yùn)行多個(gè)服務(wù) 8.微服務(wù)架構(gòu)設(shè)計(jì)軟件質(zhì)量保證最佳實(shí)踐是什么 |
第8單元--微服務(wù)架構(gòu)運(yùn)維與監(jiān)控 內(nèi)容一:微服務(wù)運(yùn)維和監(jiān)控 1.微服務(wù)系統(tǒng)設(shè)計(jì)監(jiān)控重要性? 2.微服務(wù)系統(tǒng)設(shè)計(jì)監(jiān)控?cái)?shù)據(jù)采集方法是什么? 3.微服務(wù)系統(tǒng)設(shè)計(jì)如何監(jiān)控設(shè)計(jì)? 4.微服務(wù)系統(tǒng)語(yǔ)義監(jiān)控如何做? 5.微服務(wù)系統(tǒng)進(jìn)程監(jiān)控如何做? 6.微服務(wù)系統(tǒng)錯(cuò)誤日志監(jiān)控如何做? 7.微服務(wù)系統(tǒng)設(shè)計(jì)監(jiān)控的最佳實(shí)踐是什么? 8.最佳實(shí)踐與案例分析 |
第9單元--微服務(wù)分布式事務(wù)和日志監(jiān)控 內(nèi)容一:微服務(wù)分布式事務(wù) 1.本地事務(wù)-JDBC實(shí)現(xiàn) 2.XA和兩階段事務(wù)協(xié)議 3.J2EE分布式事務(wù) 4.Spring框架與分布式事務(wù) 5.CAP原則和BASE原則 6.微服務(wù)事務(wù)一致性實(shí)現(xiàn)策略 7.TCC與分布式微服務(wù)架構(gòu)事務(wù) 8.分布式微服務(wù)架構(gòu)最佳實(shí)踐 內(nèi)容二:大型微服務(wù)分布式日志 1.大數(shù)據(jù)日志系統(tǒng)的構(gòu)建 2.開(kāi)源日志框架的原理分析與應(yīng)用實(shí)踐 3.ELK系統(tǒng)的構(gòu)建與使用 4.Elasticsearch 5.Logstash 6.Kibana 7.大數(shù)據(jù)日志系統(tǒng)的原理與設(shè)計(jì) 8.日志系統(tǒng)的容量和性能評(píng)估 內(nèi)容三:微服務(wù)分布式跟蹤系統(tǒng)—大眾點(diǎn)評(píng)CAT 1.基于調(diào)用鏈的服務(wù)治理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 2.調(diào)用鏈跟蹤的原理 3. 分布式系統(tǒng)的遠(yuǎn)程調(diào)用過(guò)程 4.Google Dapper實(shí)現(xiàn) 5.大眾點(diǎn)評(píng)CAT案例分析 6.CAT實(shí)現(xiàn)原理 7.CAT部署策略 8.CAT最佳實(shí)踐 內(nèi)容一:大型分布式架構(gòu)核心概念 1.典型大規(guī)模互聯(lián)網(wǎng)系統(tǒng)架構(gòu) 2.可用性的概念以及設(shè)計(jì)準(zhǔn)則 3.擴(kuò)展性的概念以及設(shè)計(jì)準(zhǔn)則 4.負(fù)載均衡的概念以及設(shè)計(jì)準(zhǔn)? 5.一致性的概念以及設(shè)計(jì)準(zhǔn)則 6.通過(guò)大量案例分析以上原則 內(nèi)容二:降級(jí)設(shè)計(jì)與實(shí)踐 1.服務(wù)限流降級(jí)概念; 2.服務(wù)限流降級(jí)使用業(yè)務(wù)場(chǎng)景; 3.服務(wù)限流降級(jí)設(shè)計(jì)環(huán)節(jié); 4.服務(wù)限流降級(jí)之原則篇、架構(gòu)篇、框架篇、業(yè)務(wù)篇; 5.移動(dòng)時(shí)代服務(wù)限流降級(jí)如何打造; 6.我們的實(shí)踐案例; 內(nèi)容三:高可用性設(shè)計(jì) 1.可用性一般度量 2.可用性實(shí)踐 3.平均故障間隔時(shí)間(MTBF) 4.平均修復(fù)時(shí)間 5.錯(cuò)誤和缺陷率 6.高可用性原則 1: Remember Everything Fails 7.高可用性原則 2: Automate Everything 8.可用性最佳實(shí)踐-1-錯(cuò)誤檢測(cè) 9.可用性最佳實(shí)踐-2-錯(cuò)誤隔離/恢復(fù)/降級(jí)或掩蓋 10.可用性最佳實(shí)踐-3-錯(cuò)誤預(yù)防 11.機(jī)器故障自動(dòng)修復(fù) 12.資源故障自動(dòng)遷移 13.服務(wù)故障容災(zāi)降級(jí) 14.業(yè)務(wù)容量自動(dòng)調(diào)整 15.架構(gòu)設(shè)計(jì)預(yù)防; |
第10單元--大型分布式架構(gòu)設(shè)計(jì)最佳實(shí)踐 內(nèi)容一:使用微服務(wù)架構(gòu)改造遺留系統(tǒng) 1.背景與挑戰(zhàn) 2.改造策略 3.逐步替換微服務(wù) 4.功能剝離和封裝 5.依賴數(shù)據(jù)解耦和基礎(chǔ)數(shù)據(jù)共享 6.通過(guò)案例分析微服務(wù)架構(gòu)改造 |
第11單元--使用微服務(wù)架構(gòu)改造遺留系統(tǒng) 內(nèi)容一:使用微服務(wù)架構(gòu)改造遺留系統(tǒng) 1.背景與挑戰(zhàn) 2.改造策略 3.逐步替換微服務(wù) 4.功能剝離和封裝 5.依賴數(shù)據(jù)解耦和基礎(chǔ)數(shù)據(jù)共享 6.通過(guò)案例分析微服務(wù)架構(gòu)改造 |