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