前言:
阿里巴巴十艾,作為國內(nèi)互聯(lián)網(wǎng)公司的Top抵代,算是業(yè)界的標(biāo)桿,有阿里背景的程序員忘嫉,也更具有權(quán)威性荤牍。作為程序員,都清楚阿里對(duì)于員工要求有多高榄融,技術(shù)人員掌握的技術(shù)水平更是望塵莫及参淫。所以,大廠程序員的很多經(jīng)驗(yàn)也都值得我們借鑒和學(xué)習(xí)愧杯,在一定程度上確實(shí)能夠幫助我們“走捷徑”涎才。
Spring Cloud Alibaba其實(shí)是阿里的微服務(wù)解決方案,是阿里巴巴結(jié)合自身微服務(wù)實(shí)踐,開源的微服務(wù)全家桶力九,在Spring Cloud項(xiàng)目中孵化成為Spring Cloud的子項(xiàng)目耍铜。第一代的Spring Cloud標(biāo)準(zhǔn)中很多組件已經(jīng)停更,如:Eureak,zuul等。所以Spring Cloud Alibaba很有可能成為Spring Cloud第二代的標(biāo)準(zhǔn)實(shí)現(xiàn)跌前,所以許多組件在業(yè)界逐漸開始使用棕兼,已有很多成功案例。值得一提的是Spring Cloud Alibaba對(duì)Dubbo做了很好的兼容抵乓,同時(shí)也提供了一些強(qiáng)大的功能伴挚,如 Sentinel 流控 靶衍,Seata 分布式事務(wù),Nacos 服務(wù)發(fā)現(xiàn)與注冊(cè)等等茎芋。
但現(xiàn)在網(wǎng)上學(xué)習(xí)SpringCloudAlibab的資料要么不全要么很少颅眶,完整的就更別說了,所以今天給大家免費(fèi)分享的正是Alibaba出品的Spring Cloud Alibaba 的學(xué)習(xí)文檔田弥,圖文并茂涛酗,量身打造,非常適合再學(xué)習(xí)Spring Cloud Alibaba的朋友觀看偷厦!下面來看看這份Spring Cloud Alibaba 學(xué)習(xí)文檔吧商叹!
一、微服務(wù)概念
隨著互聯(lián)網(wǎng)的發(fā)展只泼,網(wǎng)站應(yīng)用的規(guī)模也在不斷的擴(kuò)大剖笙,進(jìn)而導(dǎo)致系統(tǒng)架構(gòu)也在不斷的進(jìn)行變化。從互聯(lián)網(wǎng)早起到現(xiàn)在辜妓,系統(tǒng)架構(gòu)大體經(jīng)歷了下面幾個(gè)過程: 單體應(yīng)用架構(gòu)—>垂直應(yīng)用架構(gòu)—>分布式架構(gòu)—>SOA架構(gòu)—>微服務(wù)架構(gòu)枯途,當(dāng)然還有悄然興起的Service Mesh(服務(wù)網(wǎng)格化)忌怎。接下來我們就來了解一下每種系統(tǒng)架構(gòu)是什么樣子的籍滴, 以及各有什么優(yōu)缺點(diǎn)。
二榴啸、微服務(wù)環(huán)境搭建
三孽惰、 Nacos Discovery–服務(wù)治理
什么是服務(wù)治理
服務(wù)治理是微服務(wù)架構(gòu)中最核心最基本的模塊。用于實(shí)現(xiàn)各個(gè)微服務(wù)的自動(dòng)化注冊(cè)與發(fā)現(xiàn)鸥印。
四勋功、 Sentinel–服務(wù)容錯(cuò)
在微服務(wù)架構(gòu)中,我們將業(yè)務(wù)拆分成一個(gè)個(gè)的服務(wù)库说,服務(wù)與服務(wù)之間可以相互調(diào)用狂鞋,但是由于網(wǎng)絡(luò)原因或者自身的原因,服務(wù)并不能保證服務(wù)的100%可用潜的,如果單個(gè)服務(wù)出現(xiàn)問題骚揍,調(diào)用這個(gè)服務(wù)就會(huì)出現(xiàn)網(wǎng)絡(luò)延遲,此時(shí)若有大量的網(wǎng)絡(luò)涌入啰挪,會(huì)形成任務(wù)堆積信不,最終導(dǎo)致服務(wù)癱瘓。
第五章 Gateway–服務(wù)網(wǎng)關(guān)
在微服務(wù)架構(gòu)中亡呵,一個(gè)系統(tǒng)會(huì)被拆分為很多個(gè)微服務(wù)抽活。那么作為客戶端要如何去調(diào)用這么多的微服務(wù)呢?如果沒有網(wǎng)關(guān)的存在锰什,我們只能在客戶端記錄每個(gè)微服務(wù)的地址下硕,然后分別去調(diào)用丁逝。
六、Sleuth–鏈路追蹤
在大型系統(tǒng)的微服務(wù)化構(gòu)建中梭姓,一個(gè)系統(tǒng)被拆分成了許多模塊果港。這些模塊負(fù)責(zé)不同的功能,組合成系統(tǒng)糊昙,最終可以提供豐富的功能辛掠。在這種架構(gòu)中,一次請(qǐng)求往往需要涉及到多個(gè)服務(wù)释牺÷荞茫互聯(lián)網(wǎng)應(yīng)用構(gòu)建在不同的軟件模塊集上,這些軟件模塊没咙,有可能是由不同的團(tuán)隊(duì)開發(fā)猩谊、可能使用不同的編程語言來實(shí)現(xiàn)、有可能布在了幾千臺(tái)服務(wù)器祭刚,橫跨多個(gè)不同的數(shù)據(jù)中心牌捷,也就意味著這種架構(gòu)形式也會(huì)存在一些問題
七、Rocketmq–消息驅(qū)動(dòng)
八涡驮、SMS–短信服務(wù)及Nacos Config–服務(wù)配置
九暗甥、Seata–分布式事務(wù)
事務(wù)指的就是一個(gè)操作單元,在這個(gè)操作單元中的所有操作最終要保持一致的行為捉捅,要么所有操作都成功撤防,要么所有的操作都被撤銷。簡單地說棒口,事務(wù)提供一種“要么什么都不做寄月,要么做全套”機(jī)制。
</article>