Spring Boot/Spring Cloud、ESB、Dubbo

如何使用Spring Boot/Spring Cloud 實現微服務應用
spring Cloud是一個基於Spring Boot實現的雲應用開發工具,它爲基於JVM的雲應用開發中的配置管理、服務發現、斷路器、智能路由、微代理、控制總線、全局鎖、決策競選、分佈式會話和集羣狀態管理等操做提供了一種簡單的開發方式。

Spring Cloud與Dubbo對比
提到Dubbo,我想順便提下ESB,目前央視新華社也在用ESB來作任務編排,這裏先比較下Dubbo和ESB:

ESB(企業數據總線),通常採用集中式轉發請求,適合大量異構系統集成,側重任務的編排,性能問題可經過異構的方式來進行規避,沒法支持特別大的併發。
Dubbo(服務註冊管理),採用的是分佈式調用,註冊中心只記錄地址信息,而後直連調用,適合併發及壓力比較大的狀況;其側重服務的治理,將各個服務顆粒化,各個子業務系統在程序邏輯上完成業務的編排。

迴歸主題,Spring Cloud和Dubbo又有什麼不一樣那,首先,咱們看下有什麼相同之處,它們兩都具有分佈式服務治理相關的功能,都可以提供服務註冊、發現、路由、負載均衡等。說到這,Dubbo的功能好像也就這麼多了,可是Spring Cloud是提供了一整套企業級分佈式雲應用的完美解決方案,可以結合Spring Boot,Docker實現快速開發的目的,因此說Dubbo只有Spring Cloud的一部分RPC功能,並且也談不上誰好誰壞。不過,Dubbo項目現已中止了更新,淘寶內部由hsf替代dubbo,我想這會有更多人傾向Spring Cloud了。

從開發角度上說,Dubbo常與Spring、zookeeper結合,並且實現只是經過xml來配置服務地址、名稱、端口,代碼的侵入性是很小的,相對Spring Cloud,它的實現須要類註解等,多少具備必定侵入性。

ESB(Enterprise Service Bus)全名:企業服務總線,是SOA架構思想的一種實現思路
相關文章
相關標籤/搜索