申請免費試用、咨詢電話:400-8352-114
AMTeam.org
面向服務(wù)的應(yīng)用集成
——EAI和Web服務(wù)
Web服務(wù)為實現(xiàn)EAI提供了一種全新的機制。它為本地和遠程服務(wù)的定義、發(fā)布和訪問提供了一整套開放標準的方法。應(yīng)用開發(fā)人員建立了一套服務(wù)的標準后,可以在不同的系統(tǒng)、不同的平臺,使用不同的語言來方便地訪問應(yīng)用服務(wù),也可以組合一些服務(wù)來形成新的服務(wù)。使用Web服務(wù)來實現(xiàn)EAI,可以稱之為“面向服務(wù)的應(yīng)用集成”。
Web服務(wù)及其特點
Web服務(wù)(Web
Service)是一種分布式的計算技術(shù),在Internet或者Intranet上通過標準的XML協(xié)議和信息格式來發(fā)布和訪問商業(yè)應(yīng)用服務(wù)。
使用Web服務(wù),可以在Web站點放置可編程的元素,發(fā)布能滿足特定功能的在線應(yīng)用服務(wù),其他組織可以通過Internet來訪問并使用這種在線服務(wù)。
Web服務(wù)使用的是開放的Internet標準:Web服務(wù)描述語言(WSDL,用于服務(wù)描述),統(tǒng)一描述、發(fā)現(xiàn)和集成規(guī)范(UDDI,用于服務(wù)的發(fā)布和集成),簡單對象訪問協(xié)議(SOAP,用于服務(wù)調(diào)用)。
Web服務(wù)具備如下特點:
●
互操作性:任何的Web服務(wù)都可以與其他Web服務(wù)進行交互。因為SOAP協(xié)議是所有供應(yīng)商都支持的標準,避免了在CORBA、DCOM和其他協(xié)議之間轉(zhuǎn)換帶來的麻煩。
● 普遍性:Web服務(wù)使用HTTP協(xié)議和XML進行通信。因此,任何支持這些技術(shù)的設(shè)備都可以擁有和訪問Web服務(wù)。
● 易用性:Web
服務(wù)的概念易于理解,任何開發(fā)語言都可以用來編寫Web服務(wù)。目前已經(jīng)有許多工具可以開發(fā)和部署Web服務(wù),還有一些工具可以將已有的COM組件和JavaBeans、Enterprise
JavaBeans部署為Web服務(wù)。
由于Web服務(wù)的這些特點,使得Web服務(wù)成為EAI解決方案的一個理想選擇。
面向Web服務(wù)集成方案的先進性
Web服務(wù)以一種松散的服務(wù)捆綁集合形式(也可以說是一個特別的解決方案),能夠快速地開發(fā)、發(fā)布、發(fā)現(xiàn)和動態(tài)地綁定應(yīng)用服務(wù)。就目前Web服務(wù)的技術(shù)發(fā)展水平來看,Web服務(wù)可以實現(xiàn)應(yīng)用程序之間的函數(shù)或方法級的集成。
下圖是一個使用Web服務(wù)來實現(xiàn)EAI集成的案例。用戶使用Web瀏覽器可以訪問應(yīng)用服務(wù)器的信息,應(yīng)用服務(wù)器作為SOAP客戶端可以訪問駐留在各個企業(yè)系統(tǒng)中的Web服務(wù)。
這種面向Web服務(wù)的集成方案,與典型的EAI解決方案比較,具有如下優(yōu)點:
●
簡單:毫無疑問,相比于典型的EAI解決方案(包括分布式技術(shù)如DCOM和CORBA),Web服務(wù)更便于設(shè)計、開發(fā)、維護和使用。開發(fā)和使用Web服務(wù)的平臺框架之后,創(chuàng)建跨越多個應(yīng)用程序的商務(wù)流程處理將變得相對簡單。
●
開放標準:不像有所有權(quán)的EAI解決方案,Web服務(wù)是基于開放標準如UDDI、SOAP、HTTP等的。這可能是導(dǎo)致Web服務(wù)被廣泛接受的最重要的因素。事實上,基于現(xiàn)存的開放標準,節(jié)約了企業(yè)為了支持新出現(xiàn)的Web技術(shù)所需要的投資。
● 靈活性:基于Web服務(wù)的集成是非常靈活的,因為它是建立在發(fā)布服務(wù)的應(yīng)用程序和使用服務(wù)的應(yīng)用程序之間的松散耦合。
● 便宜:EAI解決方案,諸如消息中介,其實施是非常昂貴的。而Web服務(wù)的實施則會變得經(jīng)濟而快速。
●
范圍:EAI解決方案,諸如消息中介,把應(yīng)用程序作為一個單獨的實體來集成。然而Web服務(wù)允許企業(yè)把大的應(yīng)用劃分為小的獨立的邏輯實體并且包裝他們。
●
高效性:正如前文所言,Web服務(wù)允許把應(yīng)用程序劃分為一些小的邏輯組件,因為在小粒度基礎(chǔ)上集成應(yīng)用程序時,集成將變得更容易,這也使Web服務(wù)的EAI解決方案比傳統(tǒng)的EAI解決方案效率更高。
● 動態(tài):Web服務(wù)通過提供動態(tài)的服務(wù)接口來實施一個動態(tài)的集成。然而傳統(tǒng)的EAI解決方案都是靜態(tài)處理的。
使用Web服務(wù)面臨的問題
由于面向Web服務(wù)的集成方式和以前的集成方式有著本質(zhì)的區(qū)別,因此引入Web服務(wù)需要考慮的問題是如何使這種方式融入到已有的系統(tǒng)中。一種選擇就是對應(yīng)用做較多的修改,甚至可能要對應(yīng)用進行重新設(shè)計。
另一方面,Web服務(wù)的標準和技術(shù)都在不斷發(fā)展,Web服務(wù)在安全性等方面還不是很完善。所以,引入Web服務(wù)需要把握好時機,需要考慮集成的成本和實施的風(fēng)險。
|