SOA和ESB的區別
本期的BIJ上面的一片文章闡述了SOA和ESB的區別,讓我很感興趣。原來看這兩個技術的時候都是從技術層面上看,而沒有從使用者的層面上看。
SOA和傳統開發的最大區別:
傳統的B/S或者C/S的開發是橫向的,表現層,業務層,資料層是彼此獨立,分開來開發,並且各自部署在各自的伺服器上的。在這種橫向架構中,一個專案不管有多少客戶,必須由一個公司,或多個公司遵守相同的元件規則來完成開發。
而SOA提出的概念是縱向概念。每一個服務都是一個獨立部署的單元,可以完全由獨立單位開發。部署在獨立伺服器上,不管底層如何實現,只要最後使用WSDL的介面,可以被呼叫就行了。例如下訂單服務,和信用檢查服務,可以是完全獨立的服務。由不同單位開發,並且在任何程式中可以公用。
所以SOA是抽象的服務,它是直接面對客戶的。
ESB實際上更象是企業訊息匯流排。它是面向開發者的,因為讓客戶理解匯流排很困難。
就像一個電腦,從客戶的角度理解,它的功能有開機,執行作業系統。而內部的匯流排怎麼傳遞,使用者不需要知道,只有開發人員需要知道。
因此,使用SOA可以
1 直接用BPEL編織SOA,使用者用自己的圖形編輯器定義業務流程。客戶更容易理解。
2 使用ESB,當所有服務都在匯流排上時候,服務呼叫實際上是一種訊息呼叫。客戶不易理解,是面向開發者統一訊息服務介面的方法。
Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=612788
相關文章
- 讓ESB與SOA同步
- Forrester:視ESB為SOA的本質REST
- 軟體架構方面基礎-ESB \SOA \GEO-ESB架構
- 深入解讀ESB與SOA的關係
- SOA、ESB、NServiceBus、雲端計算 總結
- 傳統ESB與SOA架構融合架構
- SOA架構和微服務架構的區別架構微服務
- ESB是否也是SOA成功落地的最關鍵任務?
- 在微服務中引入ESB使SOA重獲新生微服務
- SOA架構和微服務架構的區別是什麼?架構微服務
- 單體巨石、微服務和SOA關係與區別微服務
- SOA/ESB架構升級之路:從微服務到ServiceMesh,再到Sermant架構微服務
- IBM觀點:SOA與微服務區別?IBM微服務
- 主流RPC框架詳解,以及與SOA、REST的區別RPC框架REST
- 面試官靈魂三問:什麼是SOA?什麼是微服務?SOA和微服務有什麼區別?面試微服務
- ../和./和/的區別
- 和 的區別
- as 和 with的區別
- ||和??的區別
- /*和/**的區別
- LinkedList和ArrayList的區別、Vector和ArrayList的區別
- http和https的區別/get和post的區別HTTP
- 一文秒懂Restful、SOAP、RPC、SOA、微服務的區別RESTRPC微服務
- 談談自己對REST、SOA、SOAP、RPC、ICE、ESB、BPM知識彙總及理解RESTRPC
- ./ 和sh 的區別
- JQuery this和$(this)的區別jQuery
- jquery $(this) 和this的區別jQuery
- T和?的區別
- ++a和a++的區別
- makefile =和:=的區別
- Mybatis中#{}和${}傳參的區別及#和$的區別小結MyBatis
- esb的核心功能由 open source esb in action 定義
- 和區別
- 微服務=ESB的死亡?微服務
- ESB的幾種模式模式
- MYSQL和SQL的區別MySql
- varchar和char的區別
- &self 和 self 的區別