SOA在數(shù)字化校園中的研究與應(yīng)用_第1頁
SOA在數(shù)字化校園中的研究與應(yīng)用_第2頁
SOA在數(shù)字化校園中的研究與應(yīng)用_第3頁
SOA在數(shù)字化校園中的研究與應(yīng)用_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡(jiǎn)介

1、SOA在數(shù)字化校園中的研究與應(yīng)用彭華,張明揚(yáng), 虞闖(沈陽理工大學(xué) 信息科學(xué)與工程學(xué)院,遼寧 沈陽 110168)摘 要:建設(shè)數(shù)字化校園時(shí)在引進(jìn)新的應(yīng)用和系統(tǒng)的同時(shí),如何保證學(xué)校舊有的應(yīng)用和系統(tǒng)投資不至于被全部拋棄或替換是節(jié)省學(xué)校運(yùn)作成本并有效利用學(xué)校資源的重要手段。本文簡(jiǎn)要介紹了SOA及其相關(guān)技術(shù),提出了SOA結(jié)構(gòu)模型在數(shù)字化校園整合中的應(yīng)用關(guān)鍵詞:數(shù)字化校園;SOA;整合Research And Application of SOA in Digital CampusPENG Hua, ZHANG Ming-yang, YU Chuang(Shenyang Ligong Universit

2、y, Shenyang 110168, China)Abstract: Digital Campus building at the introduction of new applications and systems, how to ensure that the old school application and investment system will not be abandoned or replaced in order to save operational costs and the effective use school resources have an imp

3、ortant means. This paper describes the SOA and its related technologies , the SOA structure model in the Digital Campus Application Integration Key words: digitizing campus; SOA; integration 1數(shù)字化校園中應(yīng)用整合的研究背景經(jīng)過多年的信息化建設(shè),某學(xué)校已經(jīng)擁有相當(dāng)數(shù)量的應(yīng)用系統(tǒng),在該學(xué)校中發(fā)揮了較好的作用。但是,由于該學(xué)校并沒有一個(gè)關(guān)于信息系統(tǒng)開發(fā)的總體性長(zhǎng)遠(yuǎn)規(guī)劃,基本上是由每個(gè)部門自行選擇開發(fā)技術(shù)和開發(fā)方

4、案來建設(shè)應(yīng)用系統(tǒng)的,從而導(dǎo)致這些應(yīng)用系統(tǒng)成為一個(gè)個(gè)“信息孤島”。隨著業(yè)務(wù)發(fā)展,該學(xué)校已提出了以下新的業(yè)務(wù)需求:(1)某些新增業(yè)務(wù)需要學(xué)校內(nèi)部若干不同的應(yīng)用系統(tǒng)來協(xié)作完成,因而需要將這些“信息孤島”連接起來,提供跨部門的業(yè)務(wù)。(2)有些業(yè)務(wù)應(yīng)該給老師、員工以及學(xué)生更大的靈活性與方便性支持,使他們可以隨時(shí)隨地、利用多種不同接入方式來辦理這些業(yè)務(wù),而不必總是要到指定場(chǎng)所才能辦理。原有的系統(tǒng)對(duì)新提出的要求顯得力不從心。很多學(xué)校在建設(shè)數(shù)字化校園時(shí)在引進(jìn)新的應(yīng)用和系統(tǒng)的同時(shí),如何保證學(xué)校舊有的應(yīng)用和系統(tǒng)投資能夠集成到新的平臺(tái)下并發(fā)揮原有的作用將成為很現(xiàn)實(shí)的問題。對(duì)原有的系統(tǒng)進(jìn)行整合,要將原有的系統(tǒng)全部拋棄

5、并換上全新的系統(tǒng)并不現(xiàn)實(shí),因?yàn)檫@樣會(huì)帶來巨額的費(fèi)用以及大量的浪費(fèi)。原有的各子系統(tǒng)能夠滿足某一方的需求但卻不能滿足整體系統(tǒng)的需求,這樣我們只需將子系統(tǒng)整合到統(tǒng)一的平臺(tái)中,并將其發(fā)揮原有的功能,就能夠?qū)崿F(xiàn)資源利用與利益的最大化。 2 SOA技術(shù)在數(shù)字化校園信息整合方面的應(yīng)用SOA(service-oriented Architecture,也叫面向服務(wù)的體系結(jié)構(gòu)或面向服務(wù)架構(gòu))是指為了解決在Internet環(huán)境下業(yè)務(wù)集成的需要,通過連接能完成特定任務(wù)的獨(dú)立功能實(shí)體實(shí)現(xiàn)的一種軟件系統(tǒng)架構(gòu)。SOA是一個(gè)組件模型,它將應(yīng)用程序的不同功能單元(稱為服務(wù))通過這些服務(wù)之間定義良好的接口和契約聯(lián)系起來。接口是

6、 采用中立的方式進(jìn)行定義的,它應(yīng)該獨(dú)立于實(shí)現(xiàn)服務(wù)的硬件平臺(tái)、操作系統(tǒng)和編程語言。這使得構(gòu)建在各種這樣的系統(tǒng)中的服務(wù)可以以一種統(tǒng)一和通用的方式進(jìn)行交互。2.1傳統(tǒng)方法進(jìn)行信息整合傳統(tǒng)的信息集成(EAI) 是指對(duì)系統(tǒng)中完成不同業(yè)務(wù)功能的應(yīng)用系統(tǒng)進(jìn)行集成, 在它們之間建立起可供數(shù)據(jù)交流和應(yīng)用溝通的紐帶, 進(jìn)而使他們之間的信息交互成為可能。通過這種方式使用戶可以訪問學(xué)校的整體信息, 而不必考慮這些具體信息到底是屬于哪一個(gè)應(yīng)用系統(tǒng)的, 即各個(gè)不同應(yīng)用系統(tǒng)對(duì)用戶來說是透明的。傳統(tǒng)的企業(yè)應(yīng)用集成的層次主要有數(shù)據(jù)級(jí)集成、應(yīng)用接口級(jí)集成、業(yè)務(wù)邏輯級(jí)集成等; 數(shù)據(jù)級(jí)集成屬于面向信息的集成方式, 該方式可能會(huì)導(dǎo)致?lián)p

7、壞數(shù)據(jù), 打開數(shù)據(jù)庫的安全缺口等; 應(yīng)用接口級(jí)集成屬于面向接口的集成方式, 采用該方式對(duì)API接口進(jìn)行修改時(shí), 將增加大量的工作量, 也可能會(huì)增加現(xiàn)有應(yīng)用系統(tǒng)的不穩(wěn)定性。而業(yè)務(wù)邏輯級(jí)集成屬于面向過程的集成方式。該集成方式不僅暴露了應(yīng)用程序的業(yè)務(wù)邏輯, 而且由于業(yè)務(wù)邏輯的交叉, 導(dǎo)致了各個(gè)集成系統(tǒng)之間的緊耦合性, 降低了應(yīng)用系統(tǒng)的靈活性, 增加了整個(gè)系統(tǒng)維護(hù)的難度。上述3種方式都屬于緊耦合的應(yīng)用系統(tǒng)集成方式。這種緊耦合的集成方式將影響系統(tǒng)的靈活性和擴(kuò)展性, 阻礙業(yè)務(wù)的流程調(diào)整和優(yōu)化, 不利于企業(yè)業(yè)務(wù)發(fā)展。為解決上述問題, 需要一種面向功能層的企業(yè)系統(tǒng)集成方式。該方式不僅能保證原有系統(tǒng)的數(shù)據(jù)安全性

8、和邏輯安全性, 而且還能實(shí)現(xiàn)各系統(tǒng)之間的松耦合, 方便系統(tǒng)流程的重組和優(yōu)化。SOA的出現(xiàn),為這一問題提供了一個(gè)比較完美的解決方案。2.2 SOA結(jié)構(gòu)模型 SOA的本質(zhì)的市場(chǎng)需求就是實(shí)現(xiàn)服務(wù)和技術(shù)的完全分離,從而在最大程度上實(shí)現(xiàn)服務(wù)的集成和重組。這樣能使學(xué)校以最快的、最靈活的、最節(jié)約成本的方式來滿足當(dāng)前瞬息萬變的各種需求,從而使學(xué)校在建設(shè)數(shù)字化校園中獲得利益最大化。2.2.1 SOA和WebService的根本區(qū)別 SOA 和WebService有著如下的共同點(diǎn):都是提供服務(wù),服務(wù)借口都是基于開發(fā)的,服務(wù)借口和服務(wù)的具體實(shí)現(xiàn)都是分離的。其實(shí),WebService是SOA的核心組件,WebServ

9、ice服務(wù)接口需要綁定具體實(shí)現(xiàn)服務(wù)的服務(wù)組件來實(shí)現(xiàn)服務(wù),它對(duì)具體的服務(wù)實(shí)現(xiàn)了封裝,實(shí)現(xiàn)了服務(wù)的透明化,客戶端不需要知道服務(wù)是如何實(shí)現(xiàn)的,但是WebService組件本身是知道服務(wù)是如何實(shí)現(xiàn)的,另外客戶端調(diào)用WebService組件時(shí),需要知道WebService的具體位置和傳輸協(xié)議,這都會(huì)造成一定的不靈活性,它只是實(shí)現(xiàn)了一定程度上的抽象.SOA架構(gòu)平臺(tái)只和服務(wù)接口進(jìn)行綁定,對(duì)服務(wù)接口實(shí)現(xiàn)了封裝,實(shí)現(xiàn)了服務(wù)接口的透明化,服務(wù)位置的透明化,服務(wù)傳輸協(xié)議的透明化。SOA本身也不知道服務(wù)是如何實(shí)現(xiàn)的。當(dāng)客戶端通過SOA調(diào)用服務(wù)的時(shí)候,不需要知道真正的服務(wù)提供者是誰,具體的位置在哪和傳輸協(xié)議是什么。SO

10、A實(shí)現(xiàn)了最高程度的抽象化,為實(shí)現(xiàn)具有最高靈活性的服務(wù)建立了架構(gòu)基礎(chǔ)。2.2.2 SOA架構(gòu)的要點(diǎn)SOA架構(gòu)所提供的服務(wù)之間是松散耦合的。即SOA架構(gòu)里的服務(wù)都是可以自實(shí)現(xiàn)的,一個(gè)服務(wù)不依賴于別的服務(wù),只要給它相應(yīng)的消息和參數(shù),它就能給出相應(yīng)的結(jié)果。SOA架構(gòu)可以通過插件的方式不斷更新和完善某一服務(wù)而不會(huì)影響現(xiàn)有服務(wù)的使用。SOA架構(gòu)應(yīng)該更接近于實(shí)際業(yè)務(wù)本身的粗粒度的角度來對(duì)服務(wù)進(jìn)行劃分,發(fā)布服務(wù)接口方法,而不僅僅從模塊和技術(shù)的角度來構(gòu)建SOA服務(wù)。SOA架構(gòu)中的所有服務(wù)的具體實(shí)現(xiàn)、位置和傳輸協(xié)議對(duì)調(diào)用者來說都是透明的。應(yīng)為SOA架構(gòu)已經(jīng)對(duì)這些服務(wù)進(jìn)行了封裝,在通過SOA架構(gòu)平臺(tái)將所有的服務(wù)統(tǒng)一

11、對(duì)外發(fā)布。 2.2.3SOA中的工作角色在SOA服務(wù)模型圖(圖2)中面向服務(wù)的體系結(jié)構(gòu)中主要有三種角色:(1) 服務(wù)消費(fèi)者是需要使用服務(wù)的應(yīng)用程序或其它的服務(wù)。通過對(duì)注冊(cè)中心的服務(wù)進(jìn)行查詢后, 根據(jù)接口說明信息并使用某種傳輸協(xié)議與服務(wù)綁定并執(zhí)行服務(wù)功能。(2) 服務(wù)提供者是創(chuàng)建服務(wù)的實(shí)體??梢詮姆?wù)消費(fèi)者處接受請(qǐng)求并可以遠(yuǎn)程執(zhí)行所請(qǐng)求服務(wù)。通過向注冊(cè)中心發(fā)布服務(wù)接口信息以供服務(wù)消費(fèi)者發(fā)現(xiàn)和訪問服務(wù)。(3) 服務(wù)注冊(cè)中心處于中心位置提供了展示服務(wù)的功能。服務(wù)消費(fèi)者通過查詢存儲(chǔ)有服務(wù)信息庫的注冊(cè)中心以找到感興趣服務(wù)的接口信息。3系統(tǒng)的設(shè)計(jì)與使用的技術(shù)3.1對(duì)系統(tǒng)設(shè)計(jì)的要求如前所述,SOA是實(shí)現(xiàn)跨平

12、臺(tái)、跨技術(shù)的各種軟件服務(wù)的整合。作為一個(gè)理想的SOA平臺(tái),應(yīng)該具有無限的服務(wù)擴(kuò)展性,任何新的服務(wù)都能夠以插件的形式加入此SOA平臺(tái),并馬上能夠?qū)ν獍l(fā)布;此外它應(yīng)該還有無限的服務(wù)兼容性,任何應(yīng)用的傳輸協(xié)議,無論是J2EE RMI、.NET、 CORBA、DCOM、還是Web Service等,都能提供支持并進(jìn)行相應(yīng)的協(xié)議轉(zhuǎn)換,不管是同步服務(wù)還是異步事件都能都很好的進(jìn)行處理。3.2 系統(tǒng)結(jié)構(gòu)設(shè)計(jì) 目前市場(chǎng)上的開發(fā)平臺(tái)主要分為Java和.Net,而以java為基礎(chǔ)的J2EE技術(shù)已經(jīng)很成熟,并有許多成功的案例,以J2EE為基礎(chǔ)的SOA架構(gòu)技術(shù)必將成為英特網(wǎng)服務(wù)技術(shù)的熱點(diǎn)。本系統(tǒng)機(jī)構(gòu)采用基于J2EE平臺(tái)

13、的SOA機(jī)構(gòu).SOA需要一個(gè)對(duì)各種服務(wù)進(jìn)行集成管理的核心架構(gòu),這就是企業(yè)服務(wù)總線(ESB Enterprise Service Bus),ESB以服務(wù)導(dǎo)向的集成為目的,對(duì)各種Web Service進(jìn)行集中管理,為異構(gòu)IT系統(tǒng)環(huán)境提供信息處理的代理.它可以提供信息路由和信息格式轉(zhuǎn)換以實(shí)現(xiàn)應(yīng)用系統(tǒng)的無縫集成.其本質(zhì)的原理是它以中介的身份處在客戶端和服務(wù)提供者之間,這樣客戶端的任何請(qǐng)求,不是直接送到服務(wù)提供者,而是先送到服務(wù)總線,由服務(wù)總線將請(qǐng)求消息轉(zhuǎn)給服務(wù)提供者,得到返回消息后,服務(wù)總線再轉(zhuǎn)給服務(wù)請(qǐng)求者。通過服務(wù)總線的SOA架構(gòu)技術(shù),服務(wù)提供者的地址和傳輸協(xié)議對(duì)客戶端來說是透明的,服務(wù)總線將真正的

14、服務(wù)提供者的地址和傳輸協(xié)議都隱藏起來了.采用SOA進(jìn)行現(xiàn)有信息系統(tǒng)集成的步驟:(1) 提取各個(gè)應(yīng)用系統(tǒng)中需要對(duì)外暴露的功能模塊。這些功能模塊通常都是一些能夠清晰完整地表現(xiàn)其業(yè)務(wù)價(jià)值的軟件實(shí)體, 該軟件實(shí)體包含了它所能提供的所有服務(wù)。確定哪些接口或是方法可以被外界所訪問或被系統(tǒng)所調(diào)用,確定訪問權(quán)限。(2) 將這些功能模塊表現(xiàn)為服務(wù)組件的形式。定義服務(wù)的描述信息、服務(wù)的接口以及調(diào)用服務(wù)所需要的定位信息等。將軟件實(shí)體的概念模型轉(zhuǎn)換成實(shí)際的服務(wù)模型。將上一步中確定的Java或.Net寫的方法或功能轉(zhuǎn)化為WSDL形式的WebService,轉(zhuǎn)換的目的是方便不同平臺(tái)和語言之間的方法能夠互相調(diào)用。同時(shí)還要為

15、每個(gè)WSDL形式的WebService在服務(wù)總線上創(chuàng)建相應(yīng)的Proxy Service,發(fā)布給客戶端,供客戶端調(diào)用,實(shí)現(xiàn)客戶端的透明調(diào)用。(3) 將已實(shí)現(xiàn)的服務(wù)發(fā)布到服務(wù)注冊(cè)器,供其他服務(wù)調(diào)用者進(jìn)行查找和綁定。具體步驟為在服務(wù)總線上創(chuàng)建Business Service ,服務(wù)總線將會(huì)通過它來指向外部服務(wù)提供者。這個(gè)步驟可以視企業(yè)集成的具體情況選擇使用。(4) 綁定和調(diào)用服務(wù), 為每個(gè)Proxy Service注冊(cè)到UDDI方便查找,并配置到Route Node中,以便Proxy Service將客戶端的請(qǐng)求轉(zhuǎn)給相應(yīng)的Business Service.這樣才能將各個(gè)應(yīng)用系統(tǒng)集成起來, 實(shí)現(xiàn)企業(yè)應(yīng)

16、用在功能層面的集成(見圖1),將各種服務(wù)集成到企業(yè)服務(wù)總線后,就可以調(diào)用了,通過在UDDI上查找可以找到自己所需或感興趣的服務(wù),找到后可以從服務(wù)總線上導(dǎo)出代理服務(wù)的WSDL文件,然后將WSDL文件復(fù)制到客戶端,生成客戶端的代碼,這樣就可以來調(diào)用服務(wù)器端所提供的服務(wù)了。3.3 系統(tǒng)的安全與管理 安全 :Web服務(wù)安全規(guī)范用來保證消息的安全性。該規(guī)范主要包括認(rèn)證交換, 消息完整性和消息保密。該規(guī)范吸引人的地方在于它借助現(xiàn)有的安全標(biāo)準(zhǔn),例如,SAML(as Security Assertion Markup Language)來實(shí)現(xiàn)web服務(wù)消息的安全。OASIS正致力于Web服務(wù)安全規(guī)范的制定。管理 :隨著企業(yè)服務(wù)的增長(zhǎng),所使用的服務(wù)和業(yè)務(wù)進(jìn)程的數(shù)量也隨之增加,一個(gè)用來讓系統(tǒng)管理員管理所有運(yùn)行在多相環(huán)境下的服務(wù)的管理系統(tǒng)就顯得尤為重要。 WSDM(Web Services for Distributed Management)規(guī)定了任何根據(jù)WSDM實(shí)現(xiàn)的服務(wù)都可以由一個(gè)WSDM適應(yīng)(WSDM-compliant)的管理方案來管理。4、結(jié)束語以上只是建設(shè)數(shù)字化校園中對(duì)原有系統(tǒng)和新系統(tǒng)之間進(jìn)行整合的一個(gè)基本設(shè)計(jì)方案,由于進(jìn)行SOA的實(shí)施成本比傳統(tǒng)項(xiàng)目高30%,否采用SOA或者SOA化要根據(jù)學(xué)校的信息化階段來決

溫馨提示

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

評(píng)論

0/150

提交評(píng)論