
曙海教學優(yōu)勢
本課程面向企事業(yè)項目實際需要,秉承二十一年積累的教學品質(zhì),高級微服務培訓課程-以項目實現(xiàn)為導向,老師將會與您分享設計的全流程以及工具的綜合使用經(jīng)驗、技巧。線上/線下/上門皆可,高級微服務培訓課程-專家,課程可定制,熱線:4008699035。
曙海的課程培養(yǎng)了大批受企業(yè)歡迎的工程師。曙海的課程在業(yè)內(nèi)有著響亮的知名度。大批企業(yè)和曙海
建立了良好的合作關系,合作企業(yè)30萬+。
培訓內(nèi)容
第一部分:微服務之基本概念
培訓概要:
????想要在快速變化的市場中獲得競爭優(yōu)勢,需要打造快速交付的團隊。但規(guī)?;浖_發(fā)團隊帶來快速交付的困局,解決的思路就是微服務。然而,只有準確理解微服務,理解微服務的“小而專”、“去中心化技術治理與數(shù)據(jù)管理”,才能真正發(fā)揮微服務的優(yōu)勢。
培訓收益:
1.?理解為什么微服務架構是應對當今激烈市場競爭的解決之道
2.?理解規(guī)?;瘓F隊的組織形式:跨功能團隊與微服務架構
3.?理解微服務架構如何支持技術架構的快速演化
4.?理解微服務架構如何支持未來新技術的轉型
培訓內(nèi)容:
1.?快速變化的年代需要快速交付
1)快速變化的市場與快速更迭的技術帶來發(fā)展機遇
2)激烈競爭的新興市場需要更快速的交付去占領市場
2.?規(guī)?;瘓F隊快速交付的困局
1)煙囪式的開發(fā)團隊導致煙囪式的軟件開發(fā)
2)煙囪式的軟件開發(fā)導致煙囪式的軟件交付
解決思路:
1)跨功能團隊(特性團隊)的組織形式
2)將單體應用改為微服務架構
3.?準確理解微服務架構
1)準確理解微服務架構“小而?!钡母拍钐岣咴O計質(zhì)量
3)?準確理解微服務“去中心化的技術治理”去快速技術演化
3)準確理解微服務“去中心化的數(shù)據(jù)管理”做大數(shù)據(jù)轉型
?
第二部分:微服務之技術組件
培訓概要:
????帶著學員搭建一套微服務的系統(tǒng),將其運行起來,在實戰(zhàn)的過程中理解微服務的注冊中心、生產(chǎn)者、消費者、斷路器、服務網(wǎng)關等技術組件的原理與設計過程,從實踐中來,到實踐中去。
培訓收益:
1.?切實搭建一套微服務系統(tǒng)并運行起來
2.?掌握微服務設計中的各個組件及其參數(shù)配置
3.?掌握微服務的服務網(wǎng)關及其安全組件、智能路由、服務遷移
4.?掌握微服務設計的熔斷機制、線程隔離、服務降級、限流措施等方面的設計
5.?了解服務網(wǎng)格(Service Mesh)的基本原理及其設計
培訓內(nèi)容:
1. 注冊中心的概念與作用
1)Dubbo的簡介
2)Zookeeper的簡介
3)ETCD的簡介
4)Netflix Eureka的簡介
2. Spring Cloud Eureka方案
1)Spring Cloud Eureka的系統(tǒng)架構
????2)Eureka Server的設計
????3)Eureka Client的設計
????4)服務發(fā)現(xiàn)的設計
? ???使用ribbon的設計
? ???使用feign的設計
4)?熔斷機制
斷路器設計模式
? ???線程池隔離、優(yōu)雅降級與熔斷
? ???Hystrix的斷路器設計
3.微服務的安全措施與服務網(wǎng)關設計
????1)多渠道用戶接入
????2)請求合法性與用戶鑒權
????3)灰度發(fā)布、金絲雀測試與全鏈路壓測
????4)服務降級、流量控制與節(jié)流
4.路由網(wǎng)關(zuul)的設計
????1)智能路由與服務遷移
????2)過濾器的設計與配置
????3)Zuul的高可靠設計
5.服務網(wǎng)格(Service Mesh)
????1)Spring Cloud的跨語言調(diào)用
3)?服務網(wǎng)格的基本概念及其設計
3)Linked、Istio、Sofa MOSN服務網(wǎng)格框架
?
第三部分:微服務之設計模式
培訓概要:
????通過實際案例舉例,講解如何運用6種設計模式進行微服務的設計,并且在設計過程中講解微服務開發(fā)經(jīng)常遇到的一些設計難題及其解決方案,諸如:跨庫的關聯(lián)查詢、跨庫的事務處理、異步化操作、無狀態(tài)設計,以及與大數(shù)據(jù)技術的結合。
培訓收益:
1.?掌握如何運用6種設計模式進行微服務的設計
2.?掌握如何解決跨庫的關聯(lián)查詢、跨庫的事務處理、異步化操作等設計難題
3.?掌握微服務設計應注意的反模式及其設計陷阱
4.?掌握微服務進行業(yè)務拆分的設計原則
培訓內(nèi)容:
1.微服務架構的6種設計模式
1)聚合模式
???????案例:電商網(wǎng)站購物功能的設計
? ???微服務前后端分離的設計
? ???分布式事務的兩階段提交
? ???TCC方案與阿里GTS
? ???采用分布式事務解決跨庫的事務操作
???????案例:電商網(wǎng)站下單服務的設計
???????單一職責原則與領域驅動設計
? ???互聯(lián)網(wǎng)縱向切分在微服務的實現(xiàn)
? ???縱向切分應當注意的設計問題
? ???避免跨庫關聯(lián)查詢的方案設計
????2)代理模式
???????案例:電商網(wǎng)站支付功能的設計思路
????3)鏈式模式
????4)分支模式
????5)異步消息模式
???????案例:12306的異步化操作
???????案例:電商網(wǎng)站異步化操作的微服務實現(xiàn)
????6)數(shù)據(jù)共享模式
???????高并發(fā)寫入的分布式設計方案
???????案例:TiDB數(shù)據(jù)庫的分布式方案
???????如何實現(xiàn)高并發(fā)大數(shù)據(jù)查詢場景
???????案例:MongoDB實現(xiàn)大數(shù)據(jù)秒級查詢
2.微服務的無狀態(tài)設計
????1)Session管理的設計難題
? 2)微服務的無狀態(tài)設計
? 3)基于http/rest的無狀態(tài)低耦合通訊
3.微服務設計的反模式
????1)太多數(shù)據(jù)遷移
????2)數(shù)據(jù)共享反模式
3)?頻繁交互反模式
探討:如何解決微服務接口太多的問題
?
第四部分:微服務之進階實戰(zhàn)
培訓概要:
????老師帶著學員演練在真實項目中該如何開發(fā)微服務,包括微服務的父項目、多套配置文件、集中式的配置中心,以及如何架構一個既支持微服務又支持領域驅動的技術中臺,既能夠降低技術門檻,減少開發(fā)工作量,又能夠易于業(yè)務變更,易于架構演化。
培訓收益:
1.?掌握在真實項目中切實可行地開發(fā)微服務
2.?掌握高可靠的微服務架構設計
3.?掌握微服務的性能測試及性能調(diào)優(yōu)
培訓內(nèi)容:
1.?演練在真實項目中開發(fā)微服務
????1)微服務項目中父項目的設計
????2)微服務項目中多套配置文件的設計
????3)微服務項目中集中式配置中心的設計
2.?演練在真實項目中高可靠微服務架構
????1)高可靠注冊中心的設計
????2)高可靠服務網(wǎng)關的設計
3.?演練在真實項目中微服務的性能測試
1)斷路器監(jiān)控Turbine及其應用實踐
2)鏈路跟蹤Zipkin與微服務路由優(yōu)化的應用實踐
4)?微服務的灰度發(fā)布及其金絲雀測試
4)?微服務的全鏈路壓測應用實踐
?
第五部分:微服務之自動化運維
培訓概要:
????運維微服務架構還需要強大的運維平臺支持,也就是打造一整套DevOps自動化運維體系。這個體系包括:持續(xù)探索、持續(xù)集成、持續(xù)交付,以及在這個過程中的自動化測試與運維。老師將帶領學員實際操作如何搭建這樣的平臺,如何自動化部署微服務,以及用Prometheus、EFK運維。
培訓收益:
1.?理解DevOps的概念、作用,以及在微服務架構中如何快速交付
2.?實操Git+Jenkins+Docker+Kubernetes自動化運維體系
3.?實操Eureka+Config+Turbine+Zipkin在k8s中的云端部署
4.?實操Prometheus+Grafana+EFK的線上系統(tǒng)監(jiān)控與日志采集
培訓內(nèi)容:
1. 微服務架構需要DevOps自動化運維
1)剖析傳統(tǒng)運維存在的“交付困難”的困局
2)Who build who run it與DevOps的概念
3)敏捷團隊快速交付的持續(xù)探索、持續(xù)集成、持續(xù)交付與按需發(fā)布
4)DevOps帶來開發(fā)人員的負擔與自動化運維
2. 自動化運維的工作原理
1)Docker容器技術與發(fā)布標準化
2)分布式容器部署與Kubernetes
3)實操Git+Jenkins+Docker+Kubernetes的自動化部署過程
3. 打造微服務架構的自動化運維體系
1)注冊中心Eureka在Kubernetes的分布式部署
2)配置中心Config在Kubernetes的分布式部署
????3)斷路器監(jiān)控Turbine與路由優(yōu)化Zipkin
4. 微服務云端架構的系統(tǒng)監(jiān)控與日志采集
1)Kubernetes的系統(tǒng)監(jiān)控工具Prometheus+Grafana
2)Kubernetes的日志采集工具EFK
?