【ESB專題】-面向消息的EAI的關(guān)鍵組件
企業(yè)集成有很多種模式,隨著技術(shù)的發(fā)展,實(shí)時(shí)的、面向消息的企業(yè)集成越來越成為主流,面向消息的企業(yè)集成的穩(wěn)定性和兼容性要求其基礎(chǔ)件,也就是message系統(tǒng)必須提供足夠強(qiáng)壯和可擴(kuò)展的設(shè)計(jì),下面幾種是作為面向消息的企業(yè)集成的基礎(chǔ)件所必須提供的幾個(gè)關(guān)鍵性組件。
消息集成使得message系統(tǒng)負(fù)責(zé)轉(zhuǎn)換兩個(gè)應(yīng)用之間的數(shù)據(jù)格式,從而使得應(yīng)用可以專注于他們需要共享什么數(shù)據(jù)而不是如何共享它們。
Channels — Messaging應(yīng)用通過一個(gè)Message Channel傳送數(shù)據(jù),一個(gè)sender到receiver的虛擬管道。一個(gè)新安裝的消息系統(tǒng)默認(rèn)不包含任何channel;你必須知道你的應(yīng)用需要怎樣通訊,然后才能建立channel來完成它。
Messages — Message是在channel上傳輸?shù)牟豢煞指畹陌R虼耍瑸榱藗鬏敂?shù)據(jù),應(yīng)用必須將數(shù)據(jù)打包成一個(gè)或多個(gè)packets,將每個(gè)packet包裝成一個(gè)message,然后將其傳輸?shù)揭粋€(gè)channel。同樣的,一個(gè)receiver應(yīng)用在接受到message后必須從message中提取出數(shù)據(jù)才能使用。Message系統(tǒng)應(yīng)該能重復(fù)的傳輸message,直到它成功為止。
Pipes and Filters — 最簡(jiǎn)單的情況下,message系統(tǒng)將一個(gè)消息直接從sender計(jì)算機(jī)傳送到receiver計(jì)算機(jī)。然而,通常在消息從sender中發(fā)出后,receiver接受到之前,有一些動(dòng)作需要對(duì)message執(zhí)行。舉例來說,message也許需要驗(yàn)證或者轉(zhuǎn)換。Pipes and Filters架構(gòu)使用channel將多個(gè)處理步驟連接起來。
Routing — 在一個(gè)大型的、擁有許多不同的應(yīng)用和channel連接的企業(yè)應(yīng)用中,一個(gè)message可能需要穿過多個(gè)channel才能到達(dá)最終目的地。Message的路由如此復(fù)雜以至于最初的發(fā)送者無法知道那些channel能將message傳送給最終的receiver。因此,最初的發(fā)送者將message發(fā)送給一個(gè)Message Router,一個(gè)以Pipes and Filters架構(gòu)中的filter形式存在的應(yīng)用組件。Router將決定如何將message發(fā)送到最終receiver或者至少是下一個(gè)Router。
Transformation — 不同的應(yīng)用的數(shù)據(jù)格式可能不同。為了調(diào)節(jié)sender和receiver之間的數(shù)據(jù)格式不同的問題,message必須經(jīng)過一個(gè)中介的filter,一個(gè)Message Translator,它將message從一個(gè)格式轉(zhuǎn)換成另外一個(gè)格式,或轉(zhuǎn)換成一個(gè)公共的格式。
Endpoints — 大多數(shù)的應(yīng)用程序沒有內(nèi)建的能力來同一個(gè)message系統(tǒng)交互。因此他們必須包含一個(gè)中間層,它知道應(yīng)用系統(tǒng)如何工作,也知道message系統(tǒng)如何工作,并橋接兩個(gè)系統(tǒng)。這個(gè)系統(tǒng)是一組并列的Message Endpoints,它能夠使得應(yīng)用發(fā)送和接受message。
System manager - 作為一個(gè)大型的消息集成系統(tǒng),其面向消息的、異步、低耦合的本質(zhì)使得系統(tǒng)更加難以調(diào)試,運(yùn)行期的狀態(tài)也難以跟蹤,所以,我們必須有強(qiáng)有力的手段進(jìn)行系統(tǒng)的運(yùn)行期管理和監(jiān)控,同時(shí)最好能夠在運(yùn)行進(jìn)行動(dòng)態(tài)更新,以保障系統(tǒng)的強(qiáng)壯性。
企業(yè)應(yīng)用集成是一個(gè)巨大而復(fù)雜的系統(tǒng),作為其基礎(chǔ)件ESB系統(tǒng),必須能夠提供對(duì)其完全的支撐以及足夠強(qiáng)壯的系統(tǒng),這正是ESB系統(tǒng)建設(shè)的難度所在。
posted on 2005-11-16 20:56 fisher 閱讀(2333) 評(píng)論(6) 編輯 收藏 所屬分類: Programing