企業資料匯流排(ESB)和註冊服務管理(dubbo)的區別

來源:互聯網
上載者:User
  企業資料匯流排(ESB)和註冊服務管理(dubbo)的區別  2015-03-09 08:49:28

分類: Web開發


一、概述

1、什麼是ESB

就是企業資料匯流排的意思,他的核心功能就是相容各種協議介面,可以將資料在各種協議之間進行流轉,並且可以針對資料格式進行編排轉換。(格式轉換、協議轉換、代理、編排、安全控制、監控、不支援高並發,類似於路由器維護著一張路由表進行路由轉寄)

代表性的項目有:JBOSS ESB,Mule,Camel 以及一些其他的esb項目

 

2、什麼是服務註冊

就是將所有的服務介面(很多時候是hession協議的介面),註冊到一個中心的分布式服務叢集上(你可以考慮成apache的zookeeper服務實現的效果)。各個業務系統直接存取分布式服務尋找需要調用的介面位置,進而調用。(註冊目錄服務、監控、負載平衡、安全控制、分布式強健壯、適用於高並發)

代表性開源項目有:阿里的dubbo,淘寶的HSF(現在不知道是否繼續開源了)

 

二、雙方特點

1、ESB

ESB一般採用集中式轉寄請求,適合大量異構系統整合,並且壓力不大的情況

 

但集中式轉寄也是有優勢的,比如調用方用http協議,提供方用rmi協議,轉寄就可以轉換協議,對雙方都透明。另外,在匯流排上還可以執行流程引擎,做服務編排,比如A和B兩個服務經常一起調,就可以編排成服務C,而不用再單獨啟一個服務去做。還有,安全,流控,做起來也更方便。

支援groovy類型的指令碼語言,在匯流排上可以給資料格式做轉換

2、服務註冊管理

採用的是分布式調用,註冊中心只記錄地址資訊,然後直連調用,適合并發及壓力比較大的情況。

對於網站應用程式,大多是垂直業務,直接從資料庫拉資料展示。

 

三、應用情境

1、ESB

esb最常見的情境是,把系統裡的整合邏輯,單拉出來, 放到esb容器裡來部署,並跟應用系統適配。 這樣讓應用系統變得只有自己的商務邏輯,簡單、輕薄。

劣勢:在所有的服務上增加了一個匯流排作為溝通的渠道。對於較大的並發量會將瓶頸推到ESB匯流排上。很多時候ESB匯流排都採用MQ類的Message Service器來非同步處理緩解壓力

2、服務註冊

淘寶和阿里的各個業務系統提供了很多的介面,這個時候需要統一管理提供個各子業務系統使用,讓各個子業務系統可以通過註冊中心很快找到對應的服務

劣勢:服務編排和協議轉換還是靠各個業務子系統了

 

四、綜述

1、兩類開源項目側重點不同,ESB側重任務的編排,效能問題可通過異構的方式來進行規避。無法支援特別大的並發

2、服務註冊側重服務的治理,將各個服務顆粒化,各個子業務系統在程式邏輯上完成業務的編排。但是比較實用較大的並發量,因為dubbo類的只是存放服務地址。有zookeeper類的分布式通訊架構,能保證單點的失敗不影響整個系統的業務調用,因為業務介面都是在各個提供服務的子系統中

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.