SpringCloud 與 Dubbo區別


總覽

  Dubbo SpringCloud
服務注冊中心 Zookeeper  Spring Cloud Netfix Eureka
服務調用方式 RPC  REST API
服務監控 Dubbo-monitor Spring Boot Admin
熔斷器 不完善 Spring Cloud Netflix Hystrix
服務網關 Spring Cloud Netflix Zuul
分布式配置 Spring Cloud Config
服務跟蹤 Spring Cloud Sleuth
數據流 Spring Cloud Stream
批量任務 Spring Cloud Task
信息總線 Spring Cloud Bus

 

 

 

 

 

 

 

 

 

 

 


 

最大的區別:Dubbo底層是使用Netty這樣的NIO框架,是基於TCP協議傳輸的,配合以Hession序列化完成RPC通信。而SpringCloud是基於Http協議+rest接口調用遠程過程的通信,相對來說,Http請求會有更大的報文,占的帶寬也會更多。但是REST相比RPC更為靈活,服務提供方和調用方的依賴只依靠一紙契約,不存在代碼級別的強依賴,這在強調快速演化的微服務環境下,顯得更為合適,至於注重通信速度還是方便靈活性,具體情況具體考慮。

 


 

背景區別:Dubbo是來源於阿里團隊,SpringCloud是來源於Spring團隊,Spring廣泛遍布全球各種企業開發中,可以確保SpringCloud的后續更新維護,Dubbo雖然來自國內頂尖的阿里團隊,但是曾經被阿里棄用停更,但是后來阿里又低調重啟維護。

定位區別: Dubbo 是 SOA 時代的產物,它的關注點主要在於服務的調用,流量分發、流量監控和熔斷。而 Spring Cloud 誕生於微服務架構時代,考慮的是微服務治理的方方面面,另外由於依托了 Spirng、Spirng Boot 的優勢之上,兩個框架在開始目標就不一致,Dubbo 定位服務治理、Spirng Cloud 是一個生態。因此可以大膽地判斷,Dubbo 未來會在服務治理方面更為出色,而 Spring Cloud 在微服務治理上面無人能敵。

模塊區別:1、Dubbo主要分為服務注冊中心,服務提供者,服務消費者,還有管控中心;2、相比起Dubbo簡單的四個模塊,SpringCloud則是一個完整的分布式一站式框架,他有着一樣的服務注冊中心,服務提供者,服務消費者,管控台,斷路器,分布式配置服務,消息總線,以及服務追蹤等;

性能區別:Dubbo的每次測試除去網絡波動之外,都表現非常穩定

Spring Cloud在第一次最慢,之后越來越快,連續測試4次以上單次測試性能超過dubbo
Spring Cloud-zuul在第一次最慢,之后也表現越來越快,連續4次以上測試 單次性能與dubbo相近,相差在0.02ms內

測試數據來源:https://blog.csdn.net/u012599432/article/details/78749255

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM