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 在微服務治理上面無人能敵。框架

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

性能區別:Dubbo的每次測試除去網絡波動以外,都表現很是穩定微服務

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

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

相關文章
相關標籤/搜索