Spring Cloud|03 Spring Cloud與Dubbo

幾點說明服務器

一、本系列Spring Cloud的博客參考了方誌朋所著《深刻理解Spring Cloud與微服務構建》;
二、你們若是想更加深刻的理解Spring Cloud 建議多實戰、多看書;markdown

Dubbo簡介


介紹

Dubbo是阿里巴巴公司開源的一個高性能優秀的服務框架,使得應用可經過高性能的 RPC 實現服務的輸出和輸入功能,能夠和Spring框架無縫集成。架構

Dubbo是一款高性能、輕量級的開源Java RPC框架,它提供了三大核心能力:負載均衡

  1. 面向接口的遠程方法調用:封裝了長鏈接的NIO框架,例如:Netty、Mina等等;框架

  2. 智能容錯和負載均衡;ide

  3. 服務自動註冊和發現;集成Apache的Zookeeper組件,用於用戶的註冊與發現;

Dubbo框架的運行流程以下:

  1. 服務提供者註冊進入服務註冊中心;微服務

  2. 服務消費者訂閱服務;性能

  3. 服務消費者發現服務;中間件

  4. 服務消費者經過遠程調度來找到服務提供者進行服務的消費;blog

  5. 服務消費者和服務提供者定時發送心跳數據到服務監控中心用於記錄調用次數和時間;

Dubbo的優勢:

  1. 連通性:服務註冊中心、服務提供者、服務消費者、服務監控中心都是長鏈接;

  2. 健壯性:監控中心宕機不會影響其餘的服務的正常進行,服務器集羣配置的話,任意一個服務的宕機都不會影響總體的服務的運行情況;

  3. 伸縮性:能夠動態增減註冊中心與服務的實例數量;

  4. 升級性:服務器集羣升級,不會對現有架構形成壓力;

Spring Cloud 與 Dubbo

Spring Cloud|03 Spring Cloud與Dubbo

其餘方面:

  1. 更新頻率
    Spring Cloud保持着十分高頻率的更新,而且社區活躍度也很高,這對於一個架構來講是一件十分利好的事情,至少Spring Cloud是在飛速發展的;
    而Dubbo自從2013年3月開始暫停了更新,接下來的五年時間裏都沒有進行技術上的更新迭代,直到2017年9月才從新更新;

  2. 開發風格
    Spring Cloud更趨向使用註解+JavaBean的配置方式的敏捷開發;
    Dubbo則趨向於使用Spring XML的配置方式;

  3. 通訊方式Spring Cloud大多數使用的是基於HTTP Restful的風格,服務與服務之間徹底無關、解耦合;Dubbo則是基於RPC的遠程調用方式,對於平臺、接口、語言有強依賴;跨平臺調用服務比較困難,須要額外寫中間件;
相關文章
相關標籤/搜索