作為近兩年軟件領(lǐng)域最熱門的詞匯之一,SOA(Service Oriented Architecture,面向服務(wù)的架構(gòu))的概念以及SOA帶來的好處,正在被用戶逐步接受。Gartner的數(shù)據(jù)表明,到2007年,全球?qū)⒂?0%以上的大企業(yè)會(huì)將他們的應(yīng)用轉(zhuǎn)到SOA。但是目前CIO們最關(guān)心的是,如何才能真正實(shí)現(xiàn)基于SOA的應(yīng)用?
在近一段時(shí)期,多家軟件廠商如IBM、Sun、BEA、Oracle等都加大了對(duì)ESB(Enterprise Service Bus,企業(yè)服務(wù)總線)產(chǎn)品的投入力度,并聲稱自己的SOA解決方案因此而更加完善,ESB成為廠商在SOA競爭中的焦點(diǎn)。
ESB成為一種新的誘惑
ESB是傳統(tǒng)中間件技術(shù)與XML、Web服務(wù)等技術(shù)結(jié)合的產(chǎn)物。ESB提供了網(wǎng)絡(luò)中最基本的連接中樞,是構(gòu)筑企業(yè)神經(jīng)系統(tǒng)的必要元素。
業(yè)內(nèi)對(duì)ESB的定義是:它是由中間件技術(shù)實(shí)現(xiàn)并支持SOA的一組基礎(chǔ)架構(gòu),支持異構(gòu)環(huán)境中的服務(wù)、消息以及基于事件的交互,并且具有適當(dāng)?shù)姆?wù)級(jí)別和可管理性。
這樣的定義稍顯抽象,簡單地說,ESB就是試圖將應(yīng)用服務(wù)器上的多種邏輯層面遷移到總線以及連接點(diǎn)上,從而降低企業(yè)內(nèi)部信息共享的成本。IBM WebSphere軟件全球副總裁Sandy Carter女士介紹說,“企業(yè)服務(wù)總線是SOA中的消息框架—即消息相互交換和通信的方式,是業(yè)界標(biāo)準(zhǔn)與客戶消息框架的整合。”
ESB產(chǎn)品的共有特性包括:連接異構(gòu)的MOM(Microsoft Operations Manager)、利用Web服務(wù)描述語言接口封裝MOM協(xié)議,以及在MOM傳輸層上傳送簡單對(duì)象應(yīng)用協(xié)議(SOAP)傳輸流的能力。大多數(shù)ESB產(chǎn)品支持在分布式應(yīng)用之間通過中間層如集成代理實(shí)現(xiàn)直接對(duì)等溝通。
ESB的出現(xiàn)改變了傳統(tǒng)的軟件架構(gòu),可以提供比傳統(tǒng)中間件產(chǎn)品更為廉價(jià)的解決方案,同時(shí)它還可以消除不同應(yīng)用之間的技術(shù)差異,讓不同的應(yīng)用服務(wù)器協(xié)調(diào)運(yùn)作,實(shí)現(xiàn)了不同服務(wù)之間的通信與整合。
從功能上看,ESB提供了事件驅(qū)動(dòng)和文檔導(dǎo)向的處理模式,以及分布式的運(yùn)行管理機(jī)制,它支持基于內(nèi)容的路由和過濾,具備了復(fù)雜數(shù)據(jù)的傳輸能力,并可以提供一系列的標(biāo)準(zhǔn)接口。
對(duì)于SOA的概念,不同的軟件提供商有不同的定義方式。很多用戶也都是從不同的視角來理解SOA,從程序員的角度,SOA是一種全新的開發(fā)技術(shù),新的組件模型,比如說Web Service;從架構(gòu)設(shè)計(jì)師的角度,SOA就是一種新的設(shè)計(jì)模式,方法學(xué);從業(yè)務(wù)分析人員的角度,SOA就是基于標(biāo)準(zhǔn)的業(yè)務(wù)應(yīng)用服務(wù)。
SOA不僅是Web服務(wù),如何讓業(yè)務(wù)服務(wù)最大限度地復(fù)用才是SOA的核心價(jià)值。ESB為分散服務(wù)提供了交互、組合和治理的基礎(chǔ)架構(gòu)。有了它,才能釋放SOA的最大價(jià)值。
我們可以這樣來理解,ESB就是在SOA架構(gòu)中實(shí)現(xiàn)服務(wù)間智能化集成與管理的中介。而它與SOA的關(guān)系是:ESB是邏輯上與SOA 所遵循的基本原則保持一致的服務(wù)集成基礎(chǔ)架構(gòu),它提供了服務(wù)管理的方法和在分布式異構(gòu)環(huán)境中進(jìn)行服務(wù)交互的功能。可以這樣說,ESB是特定環(huán)境下(SOA架構(gòu)中)實(shí)施EAI(enterprise application integration,企業(yè)應(yīng)用集成)的方式。
IONA公司大中國區(qū)總裁薛志勇表示,采用IONA公司的ESB產(chǎn)品Artix作為SOA的切入點(diǎn),將可以使企業(yè)以最小的投入將已有系統(tǒng)納入SOA架構(gòu)。
薛志勇稱,目前ESB是SOA集成中最普遍采用的方法,傳統(tǒng)的EAI和平臺(tái)廠商是以“服務(wù)器”為中心、以“Hub”為形式的解決方案,這種方法雖然解決了信息孤島問題,但投資大,見效慢,而且也不靈活。
因?yàn)镋SB是傳統(tǒng)中間件技術(shù)與XML、Web服務(wù)等技術(shù)結(jié)合的產(chǎn)物,對(duì)企業(yè)而言,采用ESB中間件系統(tǒng)作為企業(yè)級(jí)信息系統(tǒng)整合方案中的中樞技術(shù),可以無須添加任何軟硬件設(shè)備,就可把過去、現(xiàn)有和未來的IT系統(tǒng)整合在企業(yè)級(jí)的信息應(yīng)用框架下,并且能為企業(yè)提供實(shí)時(shí)、大容量的信息通信和實(shí)時(shí)控制、管理和分配消息傳遞的能力。
目前,除了IONA、Tibco等專業(yè)的ESB公司外,SOA的兩大領(lǐng)導(dǎo)廠商IBM和BEA也加入了ESB的陣營。
Forrester公司分析師Mike Gilpin說:“盡管人們還不十分確定如何構(gòu)建出一個(gè)完整的SOA,但他們已經(jīng)知道要解決集成問題,而ESB正好能幫助他們解決該問題。”
國內(nèi)CIO對(duì)SOA早已聽了很多。SOA的理念和他們所面臨諸多挑戰(zhàn),SOA 的開放性和靈活性,給了CIO一個(gè)選擇它的理由。然而,不菲的平臺(tái)遷移成本以及缺少成功案例的佐證,都讓CIO難下決心。
CIO不但要考慮必須對(duì)現(xiàn)有產(chǎn)品進(jìn)行集成以支持SOA的使用場景。還必須考慮如何構(gòu)建面向未來的SOA應(yīng)用。ESB的出現(xiàn)和應(yīng)用恰好為這個(gè)難題提供了一個(gè)解決之道。
甲骨文公司在去年將ESB產(chǎn)品內(nèi)嵌在其業(yè)務(wù)流程管理產(chǎn)品中,今年就推出了獨(dú)立的ESB產(chǎn)品。BEA推出了 AquaLogic Service Bus等來加強(qiáng)ESB的產(chǎn)品線。IBM在原有WBI Message Broker、WAS 6 SIBus這些集成產(chǎn)品之外,又推出了獨(dú)立的WebSphere ESB產(chǎn)品。而傳統(tǒng)的EAI廠商Tibco和WebMethods也宣布了各自的ESB產(chǎn)品。
BEA公司中國區(qū)技術(shù)經(jīng)理劉汩春認(rèn)為:“SOA的‘服務(wù)’必須是可組裝編排、可快速注冊發(fā)布、質(zhì)量可監(jiān)控、生命周期可管理的。這樣SOA才能在整個(gè)IT范圍內(nèi)實(shí)現(xiàn)服務(wù)治理和優(yōu)化,從而直接推動(dòng)業(yè)務(wù)的優(yōu)化。而從簡單的服務(wù)重用框架到SOA演進(jìn)的過程中,ESB就是其中最重要的催化劑之一。”
開源軟件市場這幾年的發(fā)展也早就顯示出極其旺盛的生命力。Linux服務(wù)器、開源數(shù)據(jù)庫、開源應(yīng)用軟件等產(chǎn)品的市場份額都已有了很大提高。開源軟件已成為政府機(jī)構(gòu)和企業(yè)用戶節(jié)約成本的一種有效手段。
隨著Java應(yīng)用服務(wù)器迅速成為一種大眾化商品,企業(yè)中間件也朝著開源的方向跟進(jìn)。近兩年,已出現(xiàn)了許多極其成熟的企業(yè)服務(wù)總線實(shí)施項(xiàng)目。
Sun在JavaOne大會(huì)上發(fā)布了自己的免費(fèi)ESB。這個(gè)名為Java開放式企業(yè)服務(wù)總線的項(xiàng)目將放在Java.net上進(jìn)行,第一個(gè)版本有望在今年夏末交付。Sun還計(jì)劃把來自這個(gè)社區(qū)項(xiàng)目的代碼包裝成商用產(chǎn)品。
Sun的應(yīng)用程序以及開發(fā)者平臺(tái)的市場副總經(jīng)理Joe Keller說,Open ESB將會(huì)基于Java商業(yè)集成1.0規(guī)范。還提供了使用開源代碼的Java系統(tǒng)應(yīng)用程序服務(wù)器。“這將是一個(gè)推動(dòng)整個(gè)世界商業(yè)的應(yīng)用程序服務(wù)器,”Keller說。
而在Sun對(duì)ESB開源前,Iona科技公司就公開了Celtix的源代碼,這是采用GNU LGPL許可證的Java ESB,從而啟動(dòng)了ObjectWeb社區(qū)在ESB方面的工作。Iona方面聲稱,Celtix將支持Java商業(yè)智能(JBI)規(guī)范,該規(guī)范為跨應(yīng)用集成明確規(guī)定了標(biāo)準(zhǔn)化的對(duì)象容器。
目前市場上已經(jīng)有大量BEA、IBM以及Sun Microsystems等大制造商生產(chǎn)的ESB產(chǎn)品。而ObjectWeb在上星期也接收到了法國IT服務(wù)公司BULL的源代碼捐贈(zèng)來加速它ESB產(chǎn)品發(fā)展。
隨著開源項(xiàng)目的這股趨勢,這個(gè)領(lǐng)域的所有供應(yīng)商都在觀望哪個(gè)ESB會(huì)獲得成功。IDC的副總裁Dennis Byron說:“拿IBM舉例,如果不管什么原因ObjectWeb占據(jù)了市場,如同Apache Web server一樣,我認(rèn)為他們會(huì)毫不猶豫地支持它。”
聯(lián)系客服