溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

SpringCloud?Alibaba和SpringCloud有什么區(qū)別

發(fā)布時間:2023-07-17 13:51:38 來源:億速云 閱讀:132 作者:栢白 欄目:開發(fā)技術(shù)

這篇文章主要介紹了SpringCloud Alibaba和SpringCloud有什么區(qū)別,具有一定借鑒價值,需要的朋友可以參考下。下面就和我一起來看看吧。


Spring Cloud Netflix 和 Spring Cloud 是什么關(guān)系?

Spring Cloud Netflix框架也屬于Spring Cloud,但是Netflix并不是由spring來進行開發(fā)的。而是由Netflix(Nasdaq NFLX) 美國奈飛公司開發(fā)的。在某一時間段進行開源了出來,然后spring官網(wǎng)認為他的微服務(wù)架構(gòu)體系挺完善,然后直接給集成到了cloud社區(qū)當中。所謂集成也就是二次封裝,封裝了Netflix框架各個組件的starter,于是乎我們需要哪個組件就引入哪個組件的starter,用少量的配置便可以快速上手。

Netflix源碼社區(qū):https://github.com/Netflix

Netflix其實開源的項目有很多,而spring呢,也是將Netflix當中的五大組件給集成到了cloud當中,五大組件分別是Eureka + Ribbon + Feign + Hystrix + Zuul。其實在沒了解過歷史的情況下,很多人都會以為這五個組件是cloud提供的,并且認為cloud是微服務(wù)的一站式解決方案,其實真正一站式的是Netflix,毫不夸張的講就是Netflix體系成就了現(xiàn)在的cloud!

這五個組件構(gòu)造了我們所謂的一站式微服務(wù)架構(gòu),而微服務(wù)架構(gòu)完全是由注冊中心、負載均衡、遠程調(diào)用、熔斷器、網(wǎng)關(guān)來組成的。正因為這五個組件也徹底將Java引入到了現(xiàn)在人人皆知的微服務(wù)架構(gòu),他更像是一種框架發(fā)展趨勢。

組件名稱組件作用
Eureka注冊中心,服務(wù)注冊、發(fā)現(xiàn)等
Ribbon負載均衡,多服務(wù)時做負載
Feign服務(wù)間內(nèi)部調(diào)用
Hystrix熔斷器,服務(wù)熔斷、降級
Zuul服務(wù)網(wǎng)關(guān),所有外部請求經(jīng)過網(wǎng)關(guān)進行過濾轉(zhuǎn)發(fā)(路由+過濾+轉(zhuǎn)發(fā))

閑聊: 有的公司甚至根本都涉及不到高并發(fā),但是也會毫不猶豫的使用微服務(wù)架構(gòu)。其實我 個人感覺哈,如果項目特別小的情況下,單體springboot項目其實就足夠了,沒必要去盲目跟風。當然要是奔著學(xué)習而工作的,使用新架構(gòu)也沒有任何毛病。

注意: 在面試的時候經(jīng)常會問Netflix的五大組件,所以我認為還是有必要學(xué)習一哈的。

為什么有了Spring Cloud又出來個Spring Cloud Alibaba呢?

Spring Cloud Netflix的五個組件其實完全足夠開發(fā)一套成熟的微服務(wù)架構(gòu),但是為什么又出來個 Spring Cloud Alibaba呢?

原因:2018年12月cloud官網(wǎng)對外宣布: https://spring.io/blog/2018/12/12/spring-cloud-greenwich-rc1-available-now

其實在cloud對外宣布前,Netflix的很多產(chǎn)品已經(jīng)早就出去停更狀態(tài)。而cloud也沒有任何辦法,例如zuul停更,cloud一直等著他更新等不來,于是直接自己開發(fā)了一個網(wǎng)關(guān)gateway。還有Feign,cloud直接開發(fā)了個openFeign。

SpringCloud?Alibaba和SpringCloud有什么區(qū)別

這個是官網(wǎng)18年12月發(fā)出的框架替代:

SpringCloud?Alibaba和SpringCloud有什么區(qū)別

而Alibaba在Netflix停更階段,開發(fā)出了自己的微服務(wù)組件,Nacos注冊中心和Sentinel熔斷限流組件。并且成功于2018.10.31,Spring Cloud Alibaba 正式入駐了 Spring Cloud 官方孵化器,并在 Maven 中央庫發(fā)布了第一個版本。這樣一來cloud也算是松了一口氣。

SpringCloud?Alibaba和SpringCloud有什么區(qū)別

當然商人之間肯定有利益交易,Spring Cloud Alibaba也是利用spring官網(wǎng)來推廣自己的云產(chǎn)品。不管人家推薦不推薦,只要開源出來了,我認為就是值得我們學(xué)習的!并且說真心話,Nacos注冊中心不輸于任何現(xiàn)有的注冊中心。Sentinel熔斷器和Hystrix熔斷器那就更不用提了,簡直一個天上一個地下。當然Netflix屬于老產(chǎn)品,Alibaba屬于借助人家的思想而后開發(fā)的。所以本身也沒有可比性。

SpringCloud?Alibaba和SpringCloud有什么區(qū)別

Spring Cloud Alibaba都有哪些功能呢?

源碼:https://github.com/alibaba/spring-cloud-alibaba SpringCloud Alibaba

官網(wǎng):https://spring.io/projects/spring-cloud-alibaba#overview

github中文文檔:https://github.com/alibaba/spring-cloud-alibaba/blob/2.2.x/README-zh.md

也可以通過官網(wǎng)來看文檔:

SpringCloud?Alibaba和SpringCloud有什么區(qū)別

使用Spring Cloud Alibaba,您只需添加一些注解和配置,您的應(yīng)用程序就可以使用阿里巴巴的分布式解決方案,并通過阿里巴巴中間件構(gòu)建您自己的分布式系統(tǒng)。

Spring Cloud 阿里巴巴的特點:

  • 流量控制和服務(wù)降級:支持WebServlet、WebFlux、OpenFeign、RestTemplate、Dubbo接入限流降級功能??梢栽谶\行時通過控制臺實時修改限流和降流規(guī)則,還支持對限流和降流Metrics的監(jiān)控。

  • 服務(wù)注冊和發(fā)現(xiàn):可以注冊服務(wù),客戶端可以使用 Spring 管理的 bean,自動集成 Ribbon 發(fā)現(xiàn)實例。

  • 分布式配置:支持分布式系統(tǒng)的外部化配置,配置變化時自動刷新。

  • Rpc Service:擴展 Spring Cloud 客戶端 RestTemplate 和 OpenFeign 以支持調(diào)用 Dubbo RPC 服務(wù)。

  • 事件驅(qū)動:支持構(gòu)建與共享消息系統(tǒng)連接的高度可擴展的事件驅(qū)動微服務(wù)。

  • 分布式事務(wù):支持高性能、易用的分布式事務(wù)解決方案。

  • 阿里云對象存儲:海量、安全、低成本、高可靠的云存儲服務(wù)。支持隨時隨地在任何應(yīng)用程序中存儲和訪問任何類型的數(shù)據(jù)。

  • 阿里云SchedulerX:精準、高可靠、高可用的定時作業(yè)調(diào)度服務(wù),響應(yīng)時間秒級。

  • 阿里云短信:覆蓋全球的短信服務(wù),阿里短信提供便捷、高效、智能的通信能力,幫助企業(yè)快速聯(lián)系客戶。

組件:

  • Sentinel:把流量作為切入點,從流量控制、熔斷降級、系統(tǒng)負載保護等多個維度保護服務(wù)的穩(wěn)定性。

  • Nacos:一個更易于構(gòu)建云原生應(yīng)用的動態(tài)服務(wù)發(fā)現(xiàn)、配置管理和服務(wù)管理平臺。

  • RocketMQ:一款開源的分布式消息系統(tǒng),基于高可用分布式集群技術(shù),提供低延時的、高可靠的消息發(fā)布與訂閱服務(wù)。

  • Seata:阿里巴巴開源產(chǎn)品,一個易于使用的高性能微服務(wù)分布式事務(wù)解決方案。

  • Alibaba Cloud OSS: 阿里云對象存儲服務(wù)(Object Storage Service,簡稱 OSS),是阿里云提供的海量、安全、低成本、高可靠的云存儲服務(wù)。您可以在任何應(yīng)用、任何時間、任何地點存儲和訪問任意類型的數(shù)據(jù)。

  • Alibaba Cloud SchedulerX: 阿里中間件團隊開發(fā)的一款分布式任務(wù)調(diào)度產(chǎn)品,提供秒級、精準、高可靠、高可用的定時(基于 Cron 表達式)任務(wù)調(diào)度服務(wù)。

  • Alibaba Cloud SMS: 覆蓋全球的短信服務(wù),友好、高效、智能的互聯(lián)化通訊能力,幫助企業(yè)迅速搭建客戶觸達通道。

Spring Cloud Netflix屬于cloud集成了人家,而Spring Cloud Alibaba屬于是自己維護,但是加入了cloud社區(qū),也就是在cloud官網(wǎng)可以看到。這兩個都不是一個普通組件,像gateway和openFeign這些屬于一個組件,而Netflix和Alibaba是一套組件,這個關(guān)系一定要屢明白!

Cloud 框架上目前有哪些變化呢?

名稱之前的最新的目前所替代的
注冊中心EurekaConsul(spring的)、Nacos(Alibaba的)
配置中心Config(spring的)Consul(spring的)、Nacos(Alibaba的)
網(wǎng) 關(guān)ZuulSpringCloud Gateway(spring的)
負載均衡RibbonLoadbalancer (spring的)
熔斷降級HystrixSentinel(Alibaba的)
服務(wù)調(diào)用FeignOpenFeign(spring的)

其中Eureka + Ribbon + Feign + Hystrix + Zuul都屬于Netflix 的 NacosSentinel屬于是Cloud Alibaba的,其他均屬于spring cloud自己的,而spring cloud屬于是spring框架的其中一個框架。

以上就是SpringCloud Alibaba和SpringCloud有什么區(qū)別的詳細內(nèi)容了,看完之后是否有所收獲呢?如果想了解更多相關(guān)內(nèi)容,歡迎來億速云行業(yè)資訊!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI