基于Web Service技術(shù)的校園一卡通中的第三方系統(tǒng)應用集成研究
文章出處:http://5052h112.com 作者: 人氣: 發(fā)表時間:2011年09月16日
1 引言
隨著信息高度集中化的發(fā)展,校園一卡通系統(tǒng)越來越需要集成第三方系統(tǒng),以達到信息高度集中化管理。而傳統(tǒng)的接入方案一般有兩種:一種是由一卡通系統(tǒng)專業(yè)人員開發(fā)一個API標準,由API來控制第三方系統(tǒng)的接入。另一種是開發(fā)一個動態(tài)鏈接庫DLL給第三方系統(tǒng),由第三方系統(tǒng)開發(fā)人員自己根據(jù)所提供標準接口自行開發(fā)并接入到一卡通系統(tǒng)中。無論是哪種方案,都會浪費大量的人力和物力,并且系統(tǒng)之間又存在著異構(gòu)的問題,這使得開發(fā)人員在開發(fā)應用程序的接口時負擔特別的重。本文將討論用Web Service技術(shù)來對一卡通中第三方系統(tǒng)的集成研究。
2 Web Service
2.1 什么是Web Service
Internet發(fā)展非常迅速,Web站點從僅僅能提交單一的用戶界面的頁面,到現(xiàn)在已經(jīng)轉(zhuǎn)變?yōu)槟軌驅(qū)⒍喾N應用、服務等組織在一起的Web站點。它也由最初的被動的地位變成了現(xiàn)在的可進行設計的智能化Web Service,即Web服務。Web服務(Web Service)是一種新型的分布式應用程序,是下一代的www,它以一種獨立的、自描述的和模塊化的方式,通過Web來發(fā)布、查找和訪問:一個Web服務就是一個應用程序,它的接口和綁定可以用XML描述與發(fā)現(xiàn),并且可以通過基XML、SOAP、WSDL、UDDI等Internet標準直接支持,由XML通過HTTP協(xié)議來調(diào)度的遠過程調(diào)用(RPC),與其他基于XML消息的軟件應用進行交互。當一個Web服務部署以后,其它應用(以及其他Web服務)就可以發(fā)現(xiàn)和訪問這個服務。
2.2 Web Service的關(guān)鍵技術(shù)
Web Service完全基于XML技術(shù),利用XML語言建立起一整套協(xié)議棧,解決了從Service的封裝到接口的描述、及Service的注冊和發(fā)行的一系列問題。Web Service服務提供者和服務請求者均使用XML傳遞消息和數(shù)據(jù)流。SOAP構(gòu)建于XML之上,與HTTP協(xié)議綁定,解決跨平臺的傳輸問題。Web Service通過SOAP建立跨平臺的遠程調(diào)用。除了SOAP之外,WSDL也是Web Service架構(gòu)的組成部分。WSDL也是使用XML語言,用來描述Web Service所提供的信端口和服務。
UDDI用來定位和發(fā)行Web Service。SOAP、WSDL、UDDI構(gòu)成了Web Service技術(shù)的核心。
(1)SOAP(Simple 0bject Acces Protoco1)簡單對象訪問協(xié)議。SOAP是一種基于XML的表示層協(xié)議,它定議了分布式環(huán)境中應用軟件之間相一調(diào)用的方法和傳遞數(shù)據(jù)的標準方式,采用XML作為數(shù)據(jù)傳送的格式,RPC作為一致性的調(diào)用途徑,以HTTP作為底層通信協(xié)議通過防火墻使服務提供者和服務使用者在Internet上進行交互,用來在應用程序之間以對象的形式對等地、方便地交換數(shù)據(jù)。
(2 ) UDDI (Universal Discovery DescriptionIntergration)-通用發(fā)現(xiàn)、描述和集成協(xié)議,是一套面向WEB務服的信息注冊中心的現(xiàn)標準和規(guī)范。它提供一個基于Web的、分布式的注冊、發(fā)布和發(fā)現(xiàn)Web Service的標準機制。UDDI的核心組件是UDDI商業(yè)注冊中心,它使用一個XML文檔來描述企業(yè)及其提供的Web Service。創(chuàng)建UDDI注冊中心的目的就是發(fā)布和發(fā)現(xiàn)Web Service。
(3)WSDL(Web Service Description Language)-Web服務描述語言。WSDL定義了一個基于XML的組件描述標準機制。它將Web Service描述為能夠進消息交換的服務訪問點的集合。
2.3 Web Service關(guān)鍵技術(shù)之間的關(guān)系。
服務提供者向服務客戶提供服務前,先使用WSDL描述其服務,并在UDDI注冊中心注冊。UDDI注冊中心保存有指向WSDL描述和指向服務的指針。一旦服務客戶需要使用服務,則先查詢UDDI注冊中心找到相應的服務并獲取相應的WSDL描述和指向服務的指針。服務客戶使用所得到的WDL描述構(gòu)造一條SOAP消息,服務客戶與Web Service之間使用此消息進行通信。三者的關(guān)系如圖1所示:
3 Web Service的架構(gòu)
Web Service是基于服務的體系架構(gòu)。其體系結(jié)構(gòu)關(guān)心3個方面的問題:服務的描述,服務的注冊發(fā)布和服務級的通信。Web服務體系結(jié)構(gòu)提供了3個協(xié)議WSDL(Web Services Description Language)和UDDI(Universal Discovery Description Integration)以及SOAP協(xié)議。其中WSDL和UDDI用來描述和發(fā)布Web服務,SOAP 協(xié)議于具體的網(wǎng)絡傳輸協(xié)議,應用程序可以通過它調(diào)用Web服務,訪問UDDI節(jié)點,以及相互通信,其技術(shù)實現(xiàn)如圖2:
該模型涉及到3個實體即Web服務提供者、Web服務請求者、Web服務代理者和3個操作即Web服務的發(fā)布、發(fā)現(xiàn)、綁定。
服務提供者(Service Provider),也叫服務提供商,它為處理一系列特定任務的軟件資源提供服務接口,是Web服務的制作者和擁有者,它在Web服務注冊中心通過發(fā)布操作將其Web服務提供給互聯(lián)網(wǎng)用戶。
服務請求者(Service Requester),也叫服務使用者,它向Web服務提供者發(fā)送SOAP消息,發(fā)現(xiàn)并調(diào)用其它企業(yè)提供的服務,在某些情況下,提供者節(jié)點就在本地的企業(yè)內(nèi)部網(wǎng)上,它也可能存在于遠的端的因特網(wǎng)上。
服務代理者(Service Requester),也叫服務使用者,它向Web服務提供者發(fā)送SOAP消息,發(fā)現(xiàn)并調(diào)用其它企業(yè)提供的服務,在某些情況下,提供者節(jié)點就在本地的企業(yè)內(nèi)部網(wǎng)上,它也可能存在于遠端的因特網(wǎng)上。
服務代理者(Service Broker)作為服務的中介者,Web服務提供者和Web服務使用者之間的橋梁,通過它服務提供者可以發(fā)布或注冊他們的服務,服務請求者通過它能夠發(fā)現(xiàn)和定位所申請的服務并獲得用來綁定服務的信息,從而完成所要的服務。
Web Service的3種操作。其中發(fā)布/撤消:服務提供者在一個或多個注冊處登記他們已有的服務,或者撤消已經(jīng)注冊的服務;查找:服務請求者與一個或多個注冊處建立連接,查詢能滿足他們需求的服務信息;綁定:服務請求者和服務提供者之間建立服務路徑。
4 用Web Service技術(shù)實現(xiàn)一卡通系統(tǒng)集成
4.1 Web Service技術(shù)集成的體系架構(gòu)
綜上所述,我們可以利用Web Service良好的封裝性,跨平臺性及以簡單靈活性在校園一卡通中得到很好的應用。在傳統(tǒng)應用集成模型中,為了能使第三方系統(tǒng)能順利接人,需要在本系統(tǒng)與第三方系統(tǒng)之間加一個代理服務器,用于提供給第三方客戶端應用程序以及企業(yè)本身系統(tǒng)的接口程序,由于系統(tǒng)本身復雜以及第三方系統(tǒng)的需求使得代理服務器變得很“胖”。并且由于系統(tǒng)之間本身存在著異構(gòu)問題,這就使代理服務器的設計變得復雜起來。
第1頁第2頁 |