本篇內容主要講解“spring cloud與dubbo有哪些區別”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“spring cloud與dubbo有哪些區別”吧!
要弄明白,搞清楚spring cloud 的神話,就得搞清楚spring cloud所有的組件
spring cloud的默認配置中心,基于git實現。
spring cloud 支持 netflix公司開源的組件的一個模塊。netfilx開源組件有Eureka, Hystrix, Zuul, Archaius。
spring cloud的事件總線,負責整個微服務建構的事件(事件注冊,觸發,傳播)。比如配置發生改變(這個有用嗎?)
Spring Cloud Open Service Broker是一個用于構建實現Open Service Broker API的Spring Boot應用程序的框架。 Open Service Broker API項目允許開發人員為云本地平臺(如Cloud Foundry,Kubernetes和OpenShift)中運行的應用程序提供服務。 Spring Cloud Open Service Broker提供了一個基于Spring Boot的框架,使您能夠在支持Open Service Broker API的平臺上為您自己的托管服務快速創建服務代理。
spring cloud cluster作用是基于Zookeeper, Redis, Hazelcast實現選舉功能。分布式組件都有這個自帶這個功能吧
spring cloud consul作用是基于 Hashicorp Consul實現服務注冊與發現。不是跟Eureka的功能重合了嗎?
Spring Cloud Security作用是基于OAuth3 與 zuul實現用戶與資源權限
spring cloud sleuth是基于Zipkin實現鏈路跟蹤
spring cloud data flow 作用是提供一套標準從不同的數據源里面讀取數據,對數據進行處理。有點想kafka... 與RocketMQ commn
spring cloud stream 作用是統一了大部分消息中間件的行為。用 spring cloud stream可以操作很多消息中間件。比如activeMQ,RibbtMQ,kafka,RocketMQ。(一定用都沒有)
spring cloud stream app starters 作用是可以把 spring cloud stream 進行獨立部署。部署后可以提供服務,加入Spring Cloud Data Flow
spring cloud task 作用是 定時任務
spring cloud task app starters 作用是可以把 spring cloud task 進行獨立部署。部署后可以提供服務
spring cloud zookeeper 作用是對zookeeper client 進行封裝
spring cloud aws 模塊可以把spring cloud應用直接部署到AWS服務上
spring cloud connector 作用是負責鏈接jvm獲得jvm運行期信息。比如bean。
spring cloud starters 是spring cloud 支持maven的模塊,引入spring cloud starters 會引入把所有子模塊都默認加載。
spring cloud cli 可以讓你以命令行方式快速建立云組件。
spring cloud contract 作用是契約測試。
spring cloud gateway 作用是網管
spring cloud openFeign 作用是基于feing實現http的rpc功能
這么多組件,在實際使用中大家能用到多少個組件。我列了列我用過的。
Spring Cloud OpenFeign
Spring Cloud Netflix
Spring Cloud Gateway
Spring Cloud Sleuth
Spring Cloud Task
比如沒有買AWS服務無法使用Spring Cloud AWS 組件等等
功能 | dubbo | OpenFeign | 勝者 |
---|---|---|---|
網絡傳輸 | tcp,http(1,1,1,2.0) | http1.1 | dubbo |
支持多協議 | 是 | 否 | dubbo |
多序列支持 | 是(json,heesin等) | 否(json) | dubbo |
資源隔離 | 是 (通過線程池隔離服務) | 否 | dubbo |
在功能層面 dubbo 實在完爆 openFeian。dubbo還多功能都沒列出來了,實在不忍了。多注冊中心,異步調用等等。
性能 | dubbo | OpenFeign | 理由 | 勝者 |
---|---|---|---|---|
網絡傳輸 | tcp | http1.1 | tcp的性能至少是http1.1的5倍 | dubbo |
序列化性能 | hession | json | hession比json搞4倍 | dubbo |
方法調用方式 | 字節碼 | 動態代理 | 性能相差1.5倍 | dubbo |
在性能方法 dubbo 完爆 openFeian。
不知道為什么用 spring cloud
組件 | 國內 | spring cloud | Netflix | 理由 | 勝者 |
---|---|---|---|---|---|
注冊中心 | nacos | Consul(推薦使用eureka) | Eureka(不維護) | nacos | |
配置中間 | nacos/apollo | Config | archaius | nacos/apollo實在太強大了 | nacos/apolle |
限流 | sentry | 無 | Hystrix(不維護了) | sentry | |
分布式定時任務 | ejob | task | 無 | ejob | |
鏈路跟蹤 | skyking | Zipkin | 無 | skyking是apache頂級項目 | skyking |
網關 | 無 | Gateway | zuul | zuul |
spring cloud | 國內 | 解讀 |
---|---|---|
Security | 無 | security 實在太龐大了,小公司簡單寫一個aop,大公司自己寫。 |
Bus | 無 | 無用的組件,nacos/apollo就可以實現傳播了 |
Cluster | 無 | 只是做了封裝而已,業務系統基本用不到 |
Data Flow | RocketMQ-connect | 最全面的是kafka的 |
Stream | 無 | 除了RocketMQ,鳥菜啊不會使用其他消息中間件,其他的實在太惡心了 |
Connectors | 無 | 其實是有是各個庫自己實現了,比如dubbo,driud。 |
到此,相信大家對“spring cloud與dubbo有哪些區別”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。