文章目錄
什么是SpringCloud
Spring Cloud是一系列框架的有序集合。它利用Spring Boot的開發(fā)便利性巧妙地簡(jiǎn)
化了分布式系統(tǒng)基礎(chǔ)設(shè)施的開發(fā),如服務(wù)發(fā)現(xiàn)注冊(cè)、配置中心、消息總線、負(fù)載均衡、
熔斷器、數(shù)據(jù)監(jiān)控等,都可以用Spring Boot的開發(fā)風(fēng)格做到一鍵啟動(dòng)和部署。Spring并
沒(méi)有重復(fù)制造輪子,它只是將目前各家公司開發(fā)的比較成熟、經(jīng)得起實(shí)際考驗(yàn)的服務(wù)框
架組合起來(lái),通過(guò)Spring Boot風(fēng)格進(jìn)行再封裝屏蔽掉了復(fù)雜的配置和實(shí)現(xiàn)原理,最終給
開發(fā)者留出了一套簡(jiǎn)單易懂、易部署和易維護(hù)的分布式系統(tǒng)開發(fā)工具包。
Spring Cloud項(xiàng)目的官方網(wǎng)址:http://projects./spring-cloud/
SpringCloud與SpringBoot的關(guān)系
Spring Boot 是 Spring 的一套快速配置腳手架,可以基于Spring Boot 快速開發(fā)單
個(gè)微服務(wù),Spring Cloud是一個(gè)基于Spring Boot實(shí)現(xiàn)的云應(yīng)用開發(fā)工具;Spring Boot專
注于快速、方便集成的單個(gè)微服務(wù)個(gè)體,Spring Cloud關(guān)注全局的服務(wù)治理框架;
Spring Boot使用了默認(rèn)大于配置的理念,很多集成方案已經(jīng)幫你選擇好了,能不配置就
不配置,Spring Cloud很大的一部分是基于Spring Boot來(lái)實(shí)現(xiàn),可以不基于Spring Boot
嗎?不可以。
Spring Boot可以離開Spring Cloud獨(dú)立使用開發(fā)項(xiàng)目,但是Spring Cloud離不開
Spring Boot,屬于依賴的關(guān)系。
SpringCloud主要框架
- 服務(wù)發(fā)現(xiàn)——Netflix Eureka
- 服務(wù)調(diào)用——Netflix Feign
- 熔斷器——Netflix Hystrix
- 服務(wù)網(wǎng)關(guān)——Netflix Zuul
- 分布式配置——Spring Cloud Config
- 消息總線 —— Spring Cloud Bus
Spring Cloud和Dubbo對(duì)比
或許很多人會(huì)說(shuō)Spring Cloud和Dubbo的對(duì)比有點(diǎn)不公平,Dubbo只是實(shí)現(xiàn)了服務(wù)治
理,而Spring Cloud下面有17個(gè)子項(xiàng)目(可能還會(huì)新增)分別覆蓋了微服務(wù)架構(gòu)下的方
方面面,服務(wù)治理只是其中的一個(gè)方面,一定程度來(lái)說(shuō),Dubbo只是Spring Cloud
Netflix中的一個(gè)子集。
|
Dubbo |
Spring Cloud |
服務(wù)注冊(cè)中心 |
Zookeeper |
Spring Cloud Netflix Eureka |
服務(wù)調(diào)用方式 |
RPC |
REST API |
服務(wù)網(wǎng)關(guān) |
無(wú) |
Spring Cloud Netflix Zuul |
熔斷器 |
不完善 |
Spring Cloud Netflix Hystrix |
分布式配置 |
無(wú) |
Spring Cloud Config |
服務(wù)跟蹤 |
無(wú) |
Spring Cloud Sleuth |
消息總線 |
無(wú) |
Spring Cloud Bus |
數(shù)據(jù)流 |
無(wú) |
Spring Cloud Stream |
批量任務(wù) |
無(wú) |
Spring Cloud Task |
.... |
.... |
.... |
說(shuō)說(shuō)SpringCloud的版本
我采用的SpringCloud版本為Finchley.M9 。你可能會(huì)覺得這個(gè)版本怎么這么
奇怪?SpringCloud由于是一系列框架組合,為了避免與包含的自框架版本產(chǎn)生混淆,采
用倫敦地鐵站的名稱作為版本名,形式為版本名 里程碑號(hào)。 M9為第9個(gè)里程碑版本。
以下是SpringBoot與Spring Cloud版本的對(duì)照表,大家看看有沒(méi)有找到什么規(guī)律呢?
Spring Boot |
Spring Cloud |
1.2.x |
Angel版本 |
1.3.x |
Brixton版本 |
1.4.x |
Camden版本 |
1.5.x |
Dalston版本、Edgware版本 |
2.0.x |
Finchley版本 |
SpringCloud——服務(wù)組件Eureka 請(qǐng)看我下一篇博客
博客地址:xxx
來(lái)源:https://www./content-4-359051.html
|