淺談Mule ESB架構設計_第1頁
淺談Mule ESB架構設計_第2頁
淺談Mule ESB架構設計_第3頁
淺談Mule ESB架構設計_第4頁
淺談Mule ESB架構設計_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、淺談Mule ESB架構設計一、簡介Mule是一個基于Java的輕量級企業(yè)服務總線和集成平臺。它的主要特性包括:1. 基于J2EE1.4的企業(yè)消息總線(ESB)和消息代理(broker);2. 可插入的連接性,支持20多種傳輸協(xié)議,比如:jms、jdbc、tcp、udp、multicast、http、servlet、smtp、pop3、file、xmpp等;3. 支持任何傳輸之上的異步,同步和請求響應事件處理機制;4. 支持Axis或者Glue的Web Service;5. 靈活的部署結構,包括Client/Server, P2P, ESB 和Enterprise Service Networ

2、k;6. 與Spring 框架集成:可用作ESB 容器,也可以很容易的嵌入到Spring應用中;7. 使用基于SEDA處理模型的高度可伸縮的企業(yè)服務器;8. 強大的基于EIP模式的事件路由機制等。二、整體結構圖1 整體結構從上圖可見,Mule通過Transports/Connectors與外圍的異構系統(tǒng)連接,提供Routing(路由)、Transaction Management(事務管理)、Transformation(轉換)、Message Broker(消息代理)、Transportation Management(傳輸管理)、Security(安全)等核心模塊。Mule可以單獨使用,也

3、可以架設在常用的應用服務器上。圖2 架構簡圖(1)外圍系統(tǒng)的服務請求通過Mule ESB的Transport接入,Mule通過Transformer進行數(shù)據(jù)的格式轉換,然后經(jīng)過Inbound Router進行消息過濾(內(nèi)部通過配置filter實現(xiàn))后交給Mule的Component進行業(yè)務邏輯處理,處理后的結果通過Outbound Router確定傳遞給哪個接收方,然后通過Transformer進行數(shù)據(jù)格式轉換,通過Transport連接至接收方,傳遞信息。此圖描述的是Mule中的一個典型場景的處理過程,涵蓋了Mule中的各個關鍵組件。其中某些處理步驟不是必須的,如Inbound Router

4、、Transformer。圖3 架構簡圖(2)圖4 架構簡圖(3)三、功能a) 服務中介1. 將業(yè)務邏輯和消息發(fā)送分離;2. 屏蔽服務的消息格式和協(xié)議;3. 提供任意位置的服務調用;4. 提供協(xié)議橋接。b) 數(shù)據(jù)轉換1. 在應用間交換不同格式的信息;2. 操作消息的負載內(nèi)容,包括加密、壓縮和編碼轉換;3. 在異構的傳輸協(xié)議的數(shù)據(jù)類型間格式化消息。c) 消息路由1. 基于消息內(nèi)容和復雜規(guī)則路由消息;2. 消息的過濾、聚合以及重新排列序號。d) 服務創(chuàng)建和托管1. 暴露端點、EJB、Spring Bean以及POJO作為服務;2. 作為輕量級的服務容器進行服務托管。四、基本概念Mule ESB中有

5、一些基本的概念,理解這些基本概念后才能理解Mule的內(nèi)部機制。從中也可以看到Mule解決問題的基本思路。4.1 ModeModel表示托管各個服務的運行時環(huán)境。圖5 Model4.2 ServiceService是用來處理服務請求的基本單位,它調用各個組件進行服務請求的處理。圖6 Service4.3 TransportTransport管理消息的接收和發(fā)送,數(shù)據(jù)轉換的過程也是在Transport中通過調用Transformer完成的。圖7 Transport4.3.1 ConnectorConnector用于管控特定協(xié)議的使用,如HTTP Connector、JMS Connector等。4

6、.3.2 End-PointEndpoint用于表示一種協(xié)議的特定使用方式,如listening/polling、從中讀取、向指定地址寫入等,定義了發(fā)送和接收消息的通道。Endpoint控制的是底層的實體在Connector中如何被使用。Endpoint定義于Inbound和Outbound Router中。4.4 TransformerTransformer用于轉換消息的內(nèi)容。圖8 Transformer4.5 RouterRouter使用Filter基于消息中的屬性信息進行消息的分發(fā)。圖9 RouterRouter在Service中的位置決定了Router的性質(inbound、outbo

7、und和response)和擔任的角色(pass-through、aggregator等)。4.6 ComponentComponent是Service的核心部件,是Service的業(yè)務邏輯的實現(xiàn)。圖10 Component: implicit bridge componentComponent可以是Java Class(POJO、Spring Bean)、Web Service、Script等。Component可定義自己的生命周期:initialise、start、stop、dispose,不過需要實現(xiàn)Mule的LifeCycle接口。Mule 3.0版本開始提供PostConstruct和PreDestroy的注解,對應生命周期的initia

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論