基于SOA架構(gòu)的企業(yè)集成系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).doc_第1頁(yè)
基于SOA架構(gòu)的企業(yè)集成系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).doc_第2頁(yè)
基于SOA架構(gòu)的企業(yè)集成系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).doc_第3頁(yè)
基于SOA架構(gòu)的企業(yè)集成系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).doc_第4頁(yè)
基于SOA架構(gòu)的企業(yè)集成系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn).doc_第5頁(yè)
已閱讀5頁(yè),還剩1頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

基于SOA架構(gòu)的企業(yè)集成系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)2009-07-23 13:03:32 e-works 【大 中 小】 【打印】 評(píng)論: 0條 結(jié)合傳統(tǒng)企業(yè)應(yīng)用集成(eai)中存在的問(wèn)題,分析了soa和web服務(wù)技術(shù)在實(shí)現(xiàn)畀構(gòu)系統(tǒng)集成方面的先進(jìn)性,針對(duì)基于soa思想,以web服務(wù)為基礎(chǔ)的異構(gòu)系統(tǒng)集成解決方案的實(shí)現(xiàn),提出了3種web服務(wù)的構(gòu)造方法,包括corbar,activex以及javarmi,通過(guò)將soa體系架構(gòu)應(yīng)用到企業(yè)集成eai的實(shí)例表明,基于soa架構(gòu)的集成模式用于解決企業(yè)信息集成中相關(guān)異構(gòu)系統(tǒng)之間互操作的問(wèn)題具有一定優(yōu)勢(shì)。 信息化的發(fā)展,企業(yè)間協(xié)同商務(wù)和企業(yè)信息門(mén)戶(hù)(EIP)等要求企業(yè)的應(yīng)用系統(tǒng)是一個(gè)高度集成和開(kāi)放的系統(tǒng)。然而大型企業(yè)往往擁有著異構(gòu)系統(tǒng),導(dǎo)致系統(tǒng)間信息的交互與互操作非常困難,形成了一個(gè)個(gè)“信息孤島”,為了實(shí)現(xiàn)企業(yè)全局的業(yè)務(wù)過(guò)程自動(dòng)化,人們投入了大量的人力和財(cái)力來(lái)進(jìn)行系統(tǒng)集成。傳統(tǒng)的企業(yè)應(yīng)用集成(Enterprise Application Integration,EAI)解決方案有4種類(lèi)型:用戶(hù)界面集成、數(shù)據(jù)集成、業(yè)務(wù)流程集成、函數(shù)方法集成,這4種集成方法不能方便、靈活、低代價(jià)地實(shí)現(xiàn)異構(gòu)系統(tǒng)的集成,難以快速適應(yīng)企業(yè)現(xiàn)代業(yè)務(wù)變化的需求。另外,隨著企業(yè)計(jì)算的發(fā)展,企業(yè)級(jí)應(yīng)用要求新的軟件系統(tǒng)不再是從底層做起,而只是依據(jù)企業(yè)邏輯需求重新組織己有的數(shù)據(jù)存儲(chǔ),將現(xiàn)有的數(shù)據(jù)和事務(wù)通過(guò)新的渠道,如瀏覽器或者手持設(shè)備呈現(xiàn)給用戶(hù)。基于面向服務(wù)架構(gòu)(Service Oriented Archi-tecture,SOA)的應(yīng)用集成開(kāi)發(fā)方案,在不改變企業(yè)應(yīng)用底層架構(gòu)的基礎(chǔ)上,可以很好地解決上述問(wèn)題。它支持在中間層以服務(wù)模塊方式實(shí)現(xiàn)解決方案,當(dāng)多個(gè)運(yùn)行在不同平臺(tái)和技術(shù)下的應(yīng)用程序必須互相通信時(shí),這種體系結(jié)構(gòu)尤其適用。 1 SOA架構(gòu) SOA架構(gòu)是一種分布式的軟件組件模型。整個(gè)系統(tǒng)被設(shè)計(jì)和實(shí)現(xiàn)為一組相互交互的服務(wù),它使得系統(tǒng)中的某些服務(wù)能夠充分利用其他的服務(wù)同時(shí)卻無(wú)需考慮其物理位置。在該模型中,任何的業(yè)務(wù)功能被作為提供的一個(gè)服務(wù)使用。應(yīng)用程序的不同功能(服務(wù))通過(guò)這些服務(wù)之間定義良好的接口和契約聯(lián)系起來(lái),使得構(gòu)建在系統(tǒng)中的服務(wù)可以以一種統(tǒng)一和通用的方法進(jìn)行調(diào)用。這種具有中立的接口定義(沒(méi)有強(qiáng)制綁定到特定的實(shí)現(xiàn)上)的特征稱(chēng)為服務(wù)之間的松藕合。松藕合系統(tǒng)的好處有兩點(diǎn):它的靈活性;當(dāng)組成整個(gè)應(yīng)用程序的每個(gè)服務(wù)的內(nèi)部結(jié)構(gòu)和實(shí)現(xiàn)逐漸地發(fā)生改變時(shí),它能夠繼續(xù)存在。這就為解決EAI集成問(wèn)題和快速開(kāi)發(fā)新的IT系統(tǒng)鋪平了道路。SOA模型如圖1所示,說(shuō)明了SOA中的不同角色及其工作流程。SOA架構(gòu)的組件包括: (1)服務(wù)提供者:服務(wù)提供者是一個(gè)可通過(guò)網(wǎng)絡(luò)尋址的實(shí)體,它接受和執(zhí)行來(lái)自使用者的請(qǐng)求; (2)服務(wù)使用者:服務(wù)使用者是一組使用服務(wù)提供者所提供的一項(xiàng)或多項(xiàng)服務(wù)的組件; (3)服務(wù)儲(chǔ)備庫(kù):服務(wù)儲(chǔ)備庫(kù)包含服務(wù)的描述,服務(wù)提供者在該儲(chǔ)備庫(kù)中注冊(cè)其服務(wù),而服務(wù)使用者訪(fǎng)問(wèn)該儲(chǔ)備庫(kù)已發(fā)現(xiàn)的所提供的服務(wù)。圖1結(jié)合傳統(tǒng)企業(yè)應(yīng)用集成(eai)中存在的問(wèn)題,分析了soa和web服務(wù)技術(shù)在實(shí)現(xiàn)畀構(gòu)系統(tǒng)集成方面的先進(jìn)性,針對(duì)基于soa思想,以web服務(wù)為基礎(chǔ)的異構(gòu)系統(tǒng)集成解決方案的實(shí)現(xiàn),提出了3種web服務(wù)的構(gòu)造方法,包括corbar,activex以及javarmi,通過(guò)將soa體系架構(gòu)應(yīng)用到企業(yè)集成eai的實(shí)例表明,基于soa架構(gòu)的集成模式用于解決企業(yè)信息集成中相關(guān)異構(gòu)系統(tǒng)之間互操作的問(wèn)題具有一定優(yōu)勢(shì)。 2 SOA的具體實(shí)現(xiàn) SOA是一種軟件架構(gòu),而不是局限于某個(gè)技術(shù)的組合,它超越了技術(shù)范圍。SOA的關(guān)鍵是“服務(wù)”。W3C將服務(wù)定義為:“服務(wù)提供者完成一組工作,為服務(wù)使用者交付所需的最終結(jié)果。最終結(jié)果通常是使用者的狀態(tài)發(fā)生變化,但也可能是提供者的狀態(tài)改變,或者雙方都產(chǎn)生變化”。服務(wù)是網(wǎng)絡(luò)中可用的軟件資源。服務(wù)提供者通過(guò)標(biāo)準(zhǔn)機(jī)制提供服務(wù),使用者通過(guò)網(wǎng)絡(luò)有計(jì)劃地使用服務(wù)。服務(wù)儲(chǔ)備庫(kù)發(fā)布服務(wù)所在位置,并在使用者請(qǐng)求服務(wù)時(shí)定位服務(wù)。服務(wù)使用者和提供者的角色不是惟一的,服務(wù)提供者也可以是使用者,反之亦然。SOA具體的實(shí)現(xiàn)有很多,包括Web Service,Ses-sionBean,JINI等,但隨著Web Service技術(shù)被越來(lái)越重視,其己經(jīng)成為構(gòu)建SOA的主要技術(shù)。 3 基于Web Service實(shí)現(xiàn)SOA 31 Web Service體系結(jié)構(gòu) Web Service是近幾年提出的一種新的面向服務(wù)的體系結(jié)構(gòu),它是基于Web服務(wù)提供者、服務(wù)請(qǐng)求者和服務(wù)注冊(cè)代理的不同操作來(lái)建立的。具體來(lái)說(shuō)其運(yùn)作分為三部分:發(fā)布操作一服務(wù)提供者通過(guò)發(fā)布操作向服務(wù)注冊(cè)代理注冊(cè)自己的功能和訪(fǎng)問(wèn)接口;查找操作一服務(wù)請(qǐng)求者通過(guò)查找操作向服務(wù)注冊(cè)代理查找特定的服務(wù);綁定操作一服務(wù)請(qǐng)求者通過(guò)綁定操作實(shí)際使用服務(wù)提供者所提供的服務(wù)。 32 Web Service技術(shù)支持 Web Service技術(shù)建立的面向服務(wù)架構(gòu)基于開(kāi)放性標(biāo)準(zhǔn)。一些典型的開(kāi)放性標(biāo)準(zhǔn)有:XML(可擴(kuò)展標(biāo)記語(yǔ)言);SOAP(簡(jiǎn)單對(duì)象訪(fǎng)問(wèn)協(xié)議);WSDL(Web服務(wù)描述語(yǔ)言);UDDI(Web服務(wù)注冊(cè)規(guī)范)。Web Serv-ice本身就是一種SOA架構(gòu),可以實(shí)現(xiàn)各種應(yīng)用程序資源的互聯(lián)互通,大大促進(jìn)了軟件源的共享,從而成為新型的提供分布式的(全球性的)信息整合手段和應(yīng)用系統(tǒng)EAI解決方案。 33 Web Service結(jié)構(gòu)的構(gòu)造實(shí)現(xiàn) (1)基于CORBA和Java的Web體系結(jié)構(gòu) 基于CORBA和Java的Web結(jié)構(gòu)的運(yùn)行機(jī)制是:CORBA客戶(hù)方程序從Web服務(wù)器下載執(zhí)行,并與應(yīng)用服務(wù)器上的CORBA應(yīng)用對(duì)象通過(guò)Internet對(duì)象請(qǐng)求代理間協(xié)議(Internet Inter-ORB Protocol,IIOP)通信,調(diào)用其指定的操作。CORBA應(yīng)用對(duì)象首先對(duì)客戶(hù)的請(qǐng)求進(jìn)行認(rèn)證和解釋?zhuān)鶕?jù)客戶(hù)請(qǐng)求的內(nèi)容,或直接訪(fǎng)問(wèn)資源層的數(shù)據(jù)庫(kù)或與網(wǎng)絡(luò)上的其他CORBA對(duì)象交互,共同完成客戶(hù)請(qǐng)求。各種新開(kāi)發(fā)的Web應(yīng)用,只要使用接口定義語(yǔ)言(IDL)封裝成CORBA對(duì)象,在CORBA系統(tǒng)中登記注冊(cè)后,就可以動(dòng)態(tài)地加載進(jìn)入Web系統(tǒng),迅速地為客戶(hù)提供服務(wù)。體系結(jié)構(gòu)如圖2所示。圖2 (2)基于微軟ActiveX的Web體系結(jié)構(gòu) 基于ActiveX的Web結(jié)構(gòu)的運(yùn)行機(jī)制是:瀏覽器下載ActiveX控件、腳本或文檔并在本地運(yùn)行,它們可以作為分布式組件對(duì)象模型(Distributed ComponentObiect Model,DCOM)客戶(hù),利用DCOM的對(duì)象遠(yuǎn)程過(guò)程調(diào)用(Object Remote Procedure Call,ORPC)機(jī)制訪(fǎng)問(wèn)應(yīng)用服務(wù)器中的DCOM對(duì)象;也可通過(guò)服務(wù)器上的Internet服務(wù)應(yīng)用程序接口(ISAPI)等接口訪(fǎng)問(wèn)后端數(shù)據(jù)庫(kù)。因此,在基于ActiveX的Web體系中,客戶(hù)端與應(yīng)用服務(wù)器之間采用ORPC進(jìn)行通信,而應(yīng)用服務(wù)器與數(shù)據(jù)庫(kù)之間是采用ISAPI進(jìn)行通信,整個(gè)Web體系中的核心技術(shù)是COMDCOM技術(shù)。 (3)基于SUN公司的Java RMI的Web體系結(jié)構(gòu)基于Java RMI的Web結(jié)構(gòu)的運(yùn)行機(jī)制是:客戶(hù)方程序是一個(gè)Java Applet或JavaBeans對(duì)象,通過(guò)RMI內(nèi)部通信機(jī)制(Jaya RMI是SUN公司用Java語(yǔ)言建立的分布對(duì)象環(huán)境)調(diào)用應(yīng)用服務(wù)器上的Java對(duì)象,繼而以JDBC等方式訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)。因?yàn)镴ava RMI是用純Java環(huán)境實(shí)現(xiàn)的,Java語(yǔ)言本身的可移植性使得RMI具有很強(qiáng)的跨平臺(tái)性。此外,在處理純Java對(duì)象之間的通信時(shí),RMI具有較高的效率。 34 三種Web系統(tǒng)體系結(jié)構(gòu)的比較 基于CORBA、微軟ActiveX和SUN Java RMI的Web體系結(jié)構(gòu)的主要差別比較如表1所示。表14 基于SOA架構(gòu)的系統(tǒng)開(kāi)發(fā)與集成 傳統(tǒng)的EAI解決方案是私有的和復(fù)雜的,因而不能實(shí)現(xiàn)必要的靈活性和適應(yīng)性。Web Service為實(shí)現(xiàn)EAI提供了一種全新的機(jī)制,它為本地和遠(yuǎn)程服務(wù)的定義、發(fā)布和訪(fǎng)問(wèn)提供了一整套開(kāi)發(fā)標(biāo)準(zhǔn)的方法。它能徹底地改變傳統(tǒng)EAI中點(diǎn)對(duì)點(diǎn)的集成方式。 本應(yīng)用實(shí)例是某生產(chǎn)彩電企業(yè)信息系統(tǒng)。將其銷(xiāo)售系統(tǒng)分解為描述彩電信息、訂單服務(wù)、購(gòu)買(mǎi)服務(wù)三個(gè)功能,分別包裝成Web服務(wù)發(fā)布到網(wǎng)上,用戶(hù)查到這些Web服務(wù)后,就可以直接調(diào)用他們。該實(shí)例實(shí)現(xiàn)了Web服務(wù)的創(chuàng)建、部署和客戶(hù)對(duì)Web服務(wù)的調(diào)用。銷(xiāo)售系統(tǒng)Web服務(wù)和客戶(hù)端實(shí)現(xiàn)是基于Java的J2 SD-K1.4.1-01開(kāi)發(fā)環(huán)境,以TomcatServer 4.1作為Web服務(wù)器,Web服務(wù)是利用JAX-RPC技術(shù)來(lái)創(chuàng)建,生成相應(yīng)的WSDL文檔并部署在Tomcat上,客戶(hù)端利用JAX-RPC提供的xrpcc工具生成Web服務(wù)的存根,以Servlet通過(guò)存根調(diào)用Web服務(wù)的方法。 彩電信息Web服務(wù)refrilnforService的實(shí)現(xiàn)如下: (1)首先定義接口tvlnformation和接口實(shí)現(xiàn)類(lèi)tvlnforlmpl,實(shí)現(xiàn)接口的方法getRefrilnfor。 (2)用JAX-RPC提供的xrpcc工具根據(jù)配置文件tvforServiceConfig.xml生成tvforService.wsdl文檔和服務(wù)器配置文件refnInforServiceCper.ties。命令為:xrpcc-classpath refriappServer-d refriappServer-server-keep tvlnforServiceConfig.-Xml。 (3)用deploytool工具將彩電信息Web服務(wù)部署在Tomcat上。 以客戶(hù)端調(diào)用tvlnforServiceWeb服務(wù)來(lái)說(shuō)明如何用Web服務(wù)。 根據(jù)配置文件tvInforCIienfConfig.xml,用xrpCc工具從WSDL文檔的描述生成tvlnforServiceWeb服務(wù)的客戶(hù)端類(lèi)(tvlnfor-Stub存根和支撐類(lèi))。命令為:xrpcc-dtviappClient-client-keeptvlnforConfig.xml。 在findTvServlet中通過(guò)JAX-RPC調(diào)用服務(wù)實(shí)現(xiàn)類(lèi)tvforService-Im pl的方法getTvlnfor。 在findBook.html中調(diào)用findTvServlet,取得彩電信息。 其他彩電生產(chǎn)系統(tǒng),人事管理系統(tǒng)等應(yīng)用的實(shí)現(xiàn)部署情況與此類(lèi)似。各種企業(yè)應(yīng)用不管是遺留系統(tǒng)還是外部企業(yè)系統(tǒng),無(wú)論處于不同平臺(tái),使用不同對(duì)象技術(shù)的CORBA,DCOM,EJB,以及不同的編程語(yǔ)言,只要能以Web服務(wù)進(jìn)行封裝,將其統(tǒng)一在一個(gè)Web Service技術(shù)層面上,就能像插件一樣嵌人消息服務(wù)總線(xiàn),實(shí)現(xiàn)松耦合SOA架構(gòu),從而實(shí)現(xiàn)了敏捷的企業(yè)應(yīng)用集成EAI及企業(yè)信息系統(tǒng)的可擴(kuò)展功能。 5 結(jié)語(yǔ) 傳統(tǒng)EAI技術(shù)點(diǎn)對(duì)點(diǎn)的集成方式不能靈活、低代價(jià)地實(shí)現(xiàn)異構(gòu)系統(tǒng)的集成,難以適應(yīng)企業(yè)快速的業(yè)務(wù)變化需求。SOA架構(gòu)提供了一種松耦合的服務(wù)模式,大大降低了應(yīng)用系統(tǒng)的集成和維護(hù)難度。Web Service技術(shù),能夠去除原來(lái)處在

溫馨提示

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

評(píng)論

0/150

提交評(píng)論