




已閱讀5頁(yè),還剩33頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
微服務(wù)入門(mén)介紹SpringCloud,林可斌,主要內(nèi)容,一、服務(wù)架構(gòu)設(shè)計(jì)的發(fā)展二、微服務(wù)簡(jiǎn)介三、微服務(wù)架構(gòu)工作流程四、springCloud介紹,一、服務(wù)架構(gòu)設(shè)計(jì)的發(fā)展,單體架構(gòu),單一代碼庫(kù)、IDE友好、看著簡(jiǎn)單容易部署開(kāi)發(fā)模型簡(jiǎn)單,一份代碼庫(kù)進(jìn)行編碼、構(gòu)建和部署技術(shù)棧單一,單體架構(gòu)的特點(diǎn)和好處,龐大的代碼庫(kù),關(guān)系錯(cuò)綜復(fù)雜交付周期長(zhǎng)擴(kuò)展能力與彈性受限新技術(shù)與工具框架使用會(huì)受限維護(hù)成本高,單體架構(gòu)的問(wèn)題,服務(wù)化架構(gòu),對(duì)業(yè)務(wù)進(jìn)行分層,通常分為表現(xiàn)層(前端)、公共服務(wù)、業(yè)務(wù)邏輯服務(wù)、數(shù)據(jù)訪問(wèn)層等對(duì)業(yè)務(wù)進(jìn)行解耦,通過(guò)Pub-Sub或RPC進(jìn)行服務(wù)間調(diào)用關(guān)系解耦服務(wù)獨(dú)立性,多數(shù)服務(wù)可以進(jìn)行獨(dú)立打包發(fā)布每個(gè)服務(wù)的技術(shù)棧單一部署簡(jiǎn)單,具備可伸縮性,服務(wù)化架構(gòu)的特點(diǎn)和好處,對(duì)于部分服務(wù)而言,代碼庫(kù)依然很龐大打包、發(fā)布、部署流程不足夠好維護(hù)團(tuán)隊(duì)間溝通受阻,技術(shù)經(jīng)驗(yàn)有效傳遞不夠服務(wù)增多對(duì)開(kāi)發(fā)人員不夠友好,服務(wù)化架構(gòu)的問(wèn)題,微服務(wù)架構(gòu),服務(wù)注冊(cè)服務(wù)發(fā)現(xiàn)服務(wù)調(diào)用,MVCSOAMicroservices,架構(gòu)設(shè)計(jì)發(fā)展,MVCSOAMicroservices視圖、業(yè)務(wù)邏輯前后端分離,架構(gòu)設(shè)計(jì)發(fā)展,MVCSOAMicroservices視圖、業(yè)務(wù)邏大型系統(tǒng)分層輯前后端分離解耦,標(biāo)準(zhǔn)接口調(diào)用,分布式系統(tǒng),架構(gòu)設(shè)計(jì)發(fā)展,MVCSOAMicroservices視圖、業(yè)務(wù)邏大型系統(tǒng)分層云計(jì)算產(chǎn)物,輯前后端分離解耦,標(biāo)準(zhǔn)接關(guān)注敏捷交付口調(diào)用,分布和部署速度、式系統(tǒng)頻次,架構(gòu)設(shè)計(jì)發(fā)展,二、微服務(wù)簡(jiǎn)介,suiteofsmallservices:由一系列小服務(wù)組成runninginitsownprocess:每個(gè)服務(wù)運(yùn)行于自己的獨(dú)立進(jìn)程builtaroundbusinesscapabilities:圍繞著業(yè)務(wù)功能進(jìn)行建模independentlydeployable:每個(gè)服務(wù)可進(jìn)行獨(dú)立部署bareminimumofcentralizedmanagement:最低限度集中種管理,微服務(wù)的特征,每個(gè)微服務(wù)都是業(yè)務(wù)完整的接口及界面呈現(xiàn)、業(yè)務(wù)邏輯、數(shù)據(jù)管理每個(gè)微服務(wù)僅僅對(duì)一個(gè)業(yè)務(wù)負(fù)責(zé)產(chǎn)品服務(wù)、評(píng)價(jià)服務(wù)、支付服務(wù)、訂單服務(wù)每個(gè)微服務(wù)接口明確定義接口消費(fèi)只關(guān)注接口,對(duì)微服務(wù)不具備依賴獨(dú)立部署、升級(jí)和伸縮,服務(wù)的獨(dú)立性與自主性,微服務(wù)的獨(dú)立性與自主性,微服務(wù)間的獨(dú)立性是關(guān)鍵,代碼庫(kù)獨(dú)立技術(shù)棧獨(dú)立可伸縮性、可擴(kuò)展性獨(dú)立還有業(yè)務(wù)功能等,獨(dú)立的代碼庫(kù),每個(gè)微服務(wù)具備自己的代碼倉(cāng)庫(kù),由對(duì)應(yīng)團(tuán)隊(duì)開(kāi)發(fā)者維護(hù)編譯、打包、發(fā)布及部署都很快服務(wù)啟動(dòng)迅速在各個(gè)服務(wù)的代碼庫(kù)間沒(méi)有交叉依賴,技術(shù)棧對(duì)立,每個(gè)微服務(wù)都有自己獨(dú)立的技術(shù)棧來(lái)實(shí)現(xiàn),根據(jù)業(yè)務(wù)實(shí)現(xiàn)需求來(lái)選中最合適的技術(shù)棧團(tuán)隊(duì)可以嘗試新的技術(shù)、工具或者框架所選的技術(shù)棧一般來(lái)說(shuō)都很輕量級(jí)不需要同一標(biāo)準(zhǔn)化技術(shù)棧的選擇。無(wú)需針對(duì)技術(shù)選型而糾關(guān)注業(yè)務(wù)實(shí)現(xiàn),獨(dú)立的可伸縮性,每個(gè)微服務(wù)都可以獨(dú)立的伸縮,更加直觀定位性能瓶頸數(shù)據(jù)庫(kù)分片可以根據(jù)需求來(lái),業(yè)務(wù)功能獨(dú)立,每個(gè)微服務(wù)可以在不影響其他微服務(wù)的情況下進(jìn)行功能擴(kuò)展,例如更新新版本界面或者某個(gè)微服務(wù)中的某項(xiàng)功能時(shí),無(wú)需更新整個(gè)系統(tǒng)可以進(jìn)行整個(gè)業(yè)務(wù)功能的重寫(xiě),并替換之*要保證接口明確定義且穩(wěn)定,微服務(wù)優(yōu)點(diǎn),每個(gè)服務(wù)足夠內(nèi)聚,足夠小,代碼容易理解、開(kāi)發(fā)效率提高服務(wù)之間可以獨(dú)立部署,微服務(wù)架構(gòu)讓持續(xù)部署成為可能;每個(gè)服務(wù)可以各自進(jìn)行x擴(kuò)展和z擴(kuò)展,而且,每個(gè)服務(wù)可以根據(jù)自己的需要部署到合適的硬件服務(wù)器上;容易擴(kuò)大開(kāi)發(fā)團(tuán)隊(duì),可以針對(duì)每個(gè)服務(wù)(service)組件開(kāi)發(fā)團(tuán)隊(duì);提高容錯(cuò)性(faultisolation),一個(gè)服務(wù)的內(nèi)存泄露并不會(huì)讓整個(gè)系統(tǒng)癱瘓;系統(tǒng)不會(huì)被長(zhǎng)期限制在某個(gè)技術(shù)棧上。,微服務(wù)不足,“微服務(wù)”強(qiáng)調(diào)了服務(wù)大小業(yè)務(wù)邏輯。分區(qū)數(shù)據(jù)庫(kù)測(cè)試,三、微服務(wù)架構(gòu)工作流程,微服務(wù)架構(gòu)工作流程,設(shè)計(jì)階段將產(chǎn)品功能拆分為若干服務(wù)為每個(gè)服務(wù)設(shè)計(jì)API接口開(kāi)發(fā)階段實(shí)現(xiàn)API接口(包括單元測(cè)試)開(kāi)發(fā)UI原型(頁(yè)面)測(cè)試階段前后端集成驗(yàn)證產(chǎn)品功能部署階段發(fā)布測(cè)試環(huán)境發(fā)布生產(chǎn)環(huán)境,四、springCloud介紹,springCloud介紹,SpringCloud是一系列框架的有序集合。它利用SpringBoot的開(kāi)發(fā)便利性巧妙地簡(jiǎn)化了分布式系統(tǒng)基礎(chǔ)設(shè)施的開(kāi)發(fā),如服務(wù)發(fā)現(xiàn)注冊(cè)、配置中心、消息總線、負(fù)載均衡、斷路器、數(shù)據(jù)監(jiān)控等,都可以用SpringBoot的開(kāi)發(fā)風(fēng)格做到一鍵啟動(dòng)和部署。Spring并沒(méi)有重復(fù)制造輪子,它只是將目前各家公司開(kāi)發(fā)的比較成熟、經(jīng)得起實(shí)際考驗(yàn)的服務(wù)框架組合起來(lái),通過(guò)SpringBoot風(fēng)格進(jìn)行再封裝屏蔽掉了復(fù)雜的配置和實(shí)現(xiàn)原理,最終給開(kāi)發(fā)者留出了一套簡(jiǎn)單易懂、易部署和易維護(hù)的分布式系統(tǒng)開(kāi)發(fā)工具包。,springCloud主要成員,主要的小弟有:SpringCloudConfig、SpringCloudNetflix(Eureka、Hystrix、Zuul、Archaius)、SpringCloudBus、SpringCloudforCloudFoundry、SpringCloudCluster、SpringCloudConsul、SpringCloudSecurity、SpringCloudSleuth、SpringCloudDataFlow、SpringCloudStream、SpringCloudTask、SpringCloudZookeeper、SpringCloudConnectors、SpringCloudStarters、SpringCloudCLI,每個(gè)小弟身懷獨(dú)門(mén)絕技武功高強(qiáng)下面來(lái)做一一介紹。,SpringCloudNetflix,這可是個(gè)大boss,地位僅次于老大,老大各項(xiàng)服務(wù)依賴y于它,與各種NetflixOSS組件集成,組成微服務(wù)的核心,它的小弟主要有Eureka,Hystrix,Zuul,Archaius,NetflixHystrix,熔斷器,容錯(cuò)管理工具,旨在通過(guò)熔斷機(jī)制控制服務(wù)和第三方庫(kù)的節(jié)點(diǎn),從而對(duì)延遲和故障提供更強(qiáng)大的容錯(cuò)能力。比如突然某個(gè)小弟生病了,但是你還需要它的支持,然后調(diào)用之后它半天沒(méi)有響應(yīng),你卻不知道,一直在等等這個(gè)響應(yīng);有可能別的小弟也正在調(diào)用你的武功絕技,那么當(dāng)請(qǐng)求多之后,就會(huì)發(fā)生嚴(yán)重的阻塞影響老大的整體計(jì)劃。這個(gè)時(shí)候Hystrix就派上用場(chǎng)了,當(dāng)Hystrix發(fā)現(xiàn)某個(gè)小弟不在狀態(tài)不穩(wěn)定立馬馬上讓它下線,讓其它小弟來(lái)頂上來(lái),或者給你說(shuō)不用等了這個(gè)小弟今天肯定不行,該干嘛趕緊干嘛去別在這排隊(duì)了。,NetflixEureka,服務(wù)中心,云端服務(wù)發(fā)現(xiàn),一個(gè)基于REST的服務(wù),用于定位服務(wù),以實(shí)現(xiàn)云端中間層服務(wù)發(fā)現(xiàn)和故障轉(zhuǎn)移。這個(gè)可是springcloud最牛鼻的小弟,服務(wù)中心,任何小弟需要其它小弟支持什么都需要從這里來(lái)拿,同樣的你有什么獨(dú)門(mén)武功的都趕緊過(guò)報(bào)道,方便以后其它小弟來(lái)調(diào)用;它的好處是你不需要直接找各種什么小弟支持,只需要到服務(wù)中心來(lái)領(lǐng)取,也不需要知道提供支持的其它小弟在哪里,還是幾個(gè)小弟來(lái)支持的,反正拿來(lái)用就行,服務(wù)中心來(lái)保證穩(wěn)定性和質(zhì)量。,NetflixZuul,Zuul是在云平臺(tái)上提供動(dòng)態(tài)路由,監(jiān)控,彈性,安全等邊緣服務(wù)的框架。Zuul相當(dāng)于是設(shè)備和Netflix流應(yīng)用的Web網(wǎng)站后端所有請(qǐng)求的前門(mén)。當(dāng)其它門(mén)派來(lái)找大哥辦事的時(shí)候一定要先經(jīng)過(guò)zuul,看下有沒(méi)有帶刀子什么的給攔截回去,或者是需要找那個(gè)小弟的直接給帶過(guò)去。,SpringCloudConfig,俗稱的配置中心,配置管理工具包,讓你可以把配置放到遠(yuǎn)程服務(wù)器,集中化管理集群配置,目前支持本地存儲(chǔ)、Git以及Subversion。就是以后大家武器、槍火什么的東西都集中放到一起,別隨便自己帶,方便以后統(tǒng)一管理、升級(jí)裝備。,SpringCloud的優(yōu)勢(shì),微服務(wù)的框架那么多比如:dubbo、Kubernetes,為什么就要使用SpringCloud的呢?產(chǎn)出于spring大家族,spring在企業(yè)級(jí)開(kāi)發(fā)框架中無(wú)人能敵,來(lái)頭很大,可以保證后續(xù)的更新、完善。比如dubbo現(xiàn)在就差不多死了有springBoot這個(gè)獨(dú)立干將可以省很多事,大大小小的活springboot都搞的挺不錯(cuò)。作為一個(gè)微服務(wù)治理的大家伙,考慮的很全面,幾乎服務(wù)治理的方方面面都考慮到了,方便開(kāi)發(fā)開(kāi)箱即用。SpringCloud活躍度很高,教程很豐富,遇到問(wèn)題很容易找到解決方案輕輕松松幾行代碼就完成了熔斷、均衡負(fù)責(zé)、服務(wù)中心的各種平臺(tái)功能,與SpringBoot的關(guān)系,Springboot是Spring的一套快速配置腳手架,可以基于springboot快速開(kāi)發(fā)單個(gè)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025屆新疆巴州三中高一下化學(xué)期末教學(xué)質(zhì)量檢測(cè)模擬試題含解析
- 廣西貴港市2025屆化學(xué)高二下期末聯(lián)考模擬試題含解析
- 情感觸覺(jué)模擬-洞察及研究
- 區(qū)塊鏈追溯系統(tǒng)設(shè)計(jì)-洞察及研究
- 北京東城區(qū)北京匯文中學(xué)2025屆化學(xué)高一下期末質(zhì)量檢測(cè)模擬試題含解析
- 四川樂(lè)山市2025年高二化學(xué)第二學(xué)期期末監(jiān)測(cè)試題含解析
- 熱催化轉(zhuǎn)化機(jī)理-洞察及研究
- 2025屆西藏林芝地區(qū)二高高二下化學(xué)期末綜合測(cè)試模擬試題含解析
- 需求工程自動(dòng)化工具-洞察闡釋
- 社區(qū)記憶的傳播效果實(shí)證研究-洞察闡釋
- T73繼電器組裝生產(chǎn)線技術(shù)方案
- 團(tuán)員組織關(guān)系轉(zhuǎn)接介紹信(樣表)
- 福建省泉州市泉州實(shí)驗(yàn)中學(xué)2024屆八上數(shù)學(xué)期末聯(lián)考模擬試題含解析
- 抖音員工號(hào)申請(qǐng)?jiān)诼氉C明參考模板
- 營(yíng)養(yǎng)瓊脂培養(yǎng)基適用性驗(yàn)證
- 衛(wèi)寧軟件基層醫(yī)療衛(wèi)生信息系統(tǒng)課件
- 河南鄭州720特大暴雨災(zāi)害調(diào)查報(bào)告心得體會(huì)匯編
- 史學(xué)概論整套 馬工程 1124P
- (完整)雙溪課程評(píng)量表
- 社會(huì)工作價(jià)值觀與專業(yè)倫理考試試題及答案解析
- 第四章-康復(fù)心理學(xué)-心理評(píng)估
評(píng)論
0/150
提交評(píng)論