1. 程式人生 > >【轉載】企業服務總線Enterprise service bus介紹

【轉載】企業服務總線Enterprise service bus介紹

文章 ring 就是 技術分享 責任 定位 mas 業務 aps

企業服務總線(Enterprise service bus). 以往企業已經實現了很多服務, 構成了面向服務的架構,也就是我們常說的SOA. 服務的參與雙方都必須建立1對1 的聯系,讓我們回顧一下SOA架構有哪些基本的要求:

  1. SOA在相對較粗的粒度上對應用服務或業務模塊進行封裝與重用;
  2. 服務間保持松散耦合,基於開放的標準, 服務的接口描述與具體實現無關;
  3. 靈活的架構 -服務的實現細節,服務的位置乃至服務請求的底層協議都應該透明;

在SOA中,我們還需要這樣一個中間層,能夠幫助實現在SOA架構中不同服務之間的智能化管理。這是我們就需要企業服務總線(Enterprise service bus).
在N層結構的ESB:
技術分享

企業服務總線(Enterprise service bus)通訊層:

技術分享

ESB的主要功能是:

1.對各個服務之間消息監控與路由

2.解決各個服務組件之間通信

3.控制服務版本與部署

4.滿足服務像事件處理,數據轉換與映射,消息與事件查詢與排序,安全或異常處理,協議轉環,保證服務通訊的質量.
又有下表:

定位清晰

ESB有助於從服務消費者服務提供者之間解耦。ESB提供了一個集中的平臺使任何應用程序進行相互通信,使消息發送者到信息接收者解耦。

協議轉換

ESB應該能夠無縫地集成不同傳輸協議應用程序如HTTP,JMS,FTP,文件批處理和SMTP,TCP。

消息轉換

ESB提供將消息從一種格式轉換為其他基於開放的標準,如XSLT和XPath。

消息路由

ESB一個重要的功能是決定傳入消息的最終目的地,通常這歸類為消息路由。

消息增強

ESB提供基於傳入消息附加丟失數據的消息增強機制.

安全

身份驗證,授權與加密功能,為確保傳入的消息安全, 防止有人惡意使用的ESB,以滿足服務提供者信息安全。

監控與管理

監控和管理環境可配置高性能和可靠的特性,並且還可以監視的運行時消息流.

ESB縱向圖示意圖:
技術分享

主要優點:

增加靈活性,更容易適應需求變化
由點擴展到整個企業的部署解決方案(分布式總線)
更多的配置,而不是集成代碼
沒有集中的規則引擎,沒有集中的broker
零停機時間;使企業成為“可重構”的解決方案
主要缺點:


增加系統開銷
通信速度較慢,特別是對那些已經兼容的服務

目前開源ESB產品與項目:

  • Apache ServiceMix

  • Apache Synapse

  • JBoss ESB

  • MassTransit

  • NetKernel

  • NServiceBus

  • Petals ESB

  • Spring Integration

  • Open ESB

  • WSO2 ESB

  • Mule

  • UltraESB

  • Talend ESB

  • Shuttle Service Bus

希望對您軟件架構有幫助.

【轉自】http://www.cnblogs.com/wintersun/archive/2013/03/23/2977875.html

作者:Petter Liu
出處:http://www.cnblogs.com/wintersun/
本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責任的權利。
該文章也同時發布在我的獨立博客中-Petter Liu Blog。

【轉載】企業服務總線Enterprise service bus介紹