陸 露
[摘要]Web服務(wù)是一門新興的技術(shù)。解釋W(xué)eb服務(wù)的相關(guān)基本概念,指出運(yùn)用Web服務(wù)技術(shù)可以解決不同平臺(tái)和分布類型之間的互操作和松耦合問(wèn)題。最后通過(guò)一個(gè)視頻直播系統(tǒng)的具體例子說(shuō)明web服務(wù)的應(yīng)用。
[關(guān)鍵詞]Web服務(wù) 分布式系統(tǒng) 視頻直播系統(tǒng)
中圖分類號(hào):TP3文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1671-7597(2009)0910007-01
一、引言
Web服務(wù)技術(shù)逐步成為新一代計(jì)算技術(shù)的導(dǎo)向,在電子商務(wù)、企業(yè)應(yīng)用集成多個(gè)領(lǐng)域發(fā)揮著日益重要的作用。
本文以一個(gè)視頻直播系統(tǒng)為例,此系統(tǒng)是一個(gè)基于J2EE的視頻分享平臺(tái),它有多個(gè)服務(wù)器運(yùn)行著各自不同的程序,從本地?cái)?shù)據(jù)庫(kù)存取數(shù)據(jù)。當(dāng)服務(wù)器之間需要交互,又不希望對(duì)原有系統(tǒng)做大的改動(dòng)時(shí),采用web服務(wù)能夠有效地解決系統(tǒng)之間數(shù)據(jù)交換的問(wèn)題。
二、web服務(wù)概述
Web服務(wù)是一種標(biāo)準(zhǔn)化的松耦合集成模式,它提供了一個(gè)分布式的計(jì)算技術(shù),用于在Internet或者Intranet上,通過(guò)使用標(biāo)準(zhǔn)的XML協(xié)議和信息格式來(lái)展現(xiàn)商業(yè)應(yīng)用服務(wù)。使用標(biāo)準(zhǔn)的XML協(xié)議使得Web服務(wù)平臺(tái)、語(yǔ)言和發(fā)布者之間能夠互相獨(dú)立。通過(guò)開(kāi)放的Internet標(biāo)準(zhǔn):Web服務(wù)描述語(yǔ)言(WSDL,用于服務(wù)描述),統(tǒng)一描述、發(fā)現(xiàn)和集成規(guī)范(UDDI,用于服務(wù)的發(fā)布和集成),簡(jiǎn)單對(duì)象訪問(wèn)協(xié)議(SOAP,用于服務(wù)調(diào)用)和web服務(wù)流語(yǔ)言(WSFL,用來(lái)定義工作流),web服務(wù)消除了現(xiàn)存解決方案中的互用性問(wèn)題。
(一)web服務(wù)體系
Web服務(wù)模型是基于3種角色(服務(wù)提供者、服務(wù)代理和服務(wù)請(qǐng)求者)之間的交互。服務(wù)提供者通過(guò)服務(wù)代理配置和發(fā)布服務(wù);服務(wù)請(qǐng)求者通過(guò)查找服務(wù)代理那里的服務(wù)登記來(lái)找到服務(wù);服務(wù)請(qǐng)求者綁定服務(wù)提供者并使用可用的服務(wù)。
Web服務(wù)的核心技術(shù)包括:XML,SOAP,WSDL與UDDI。
1.XML使用文本形式描述數(shù)據(jù),可以在異構(gòu)系統(tǒng)間進(jìn)行數(shù)據(jù)交流。
2.簡(jiǎn)單對(duì)象訪問(wèn)協(xié)議SOAP是一種基于的XML簡(jiǎn)單協(xié)議,用于在Web上交換結(jié)構(gòu)化的信息和類型信息。由于SOAP是使用XML的以文本為基礎(chǔ)的協(xié)議,因此它比企業(yè)應(yīng)用集成一般性技術(shù)解決方案所使用的二進(jìn)制通信協(xié)議要簡(jiǎn)單的多,而且不依賴于任何傳輸環(huán)境。
3.Web服務(wù)描述語(yǔ)言WSDL是用來(lái)描述Web服務(wù)的XML格式的語(yǔ)言。WSDL不僅描述了Web服務(wù)的內(nèi)容,也描述了其調(diào)用范圍,使得對(duì)Web服務(wù)的檢索成為可能。
4.UDDI是發(fā)現(xiàn)Web服務(wù)的工具,用來(lái)確定服務(wù)描述的所在位置。只要到UDDI的資料庫(kù)注冊(cè),其它程序便可以進(jìn)行動(dòng)態(tài)服務(wù)搜尋。
(二)web服務(wù)的優(yōu)勢(shì)
Web服務(wù)為發(fā)布服務(wù)的應(yīng)用程序和使用服務(wù)的應(yīng)用程序之間建立了一種松耦合聯(lián)系,大大增強(qiáng)了靈活性。Web服務(wù)基于開(kāi)放標(biāo)準(zhǔn),并沒(méi)有引進(jìn)很深?yuàn)W的新技術(shù),便于設(shè)計(jì)、開(kāi)發(fā)、維護(hù)和使用。
Web服務(wù)允許對(duì)象在Web站點(diǎn)上分布式分布,客戶可以通過(guò)Internet訪問(wèn)它們。當(dāng)客戶需要某一服務(wù)時(shí),就可以通過(guò)全球服務(wù)中介機(jī)構(gòu)(站點(diǎn))進(jìn)行查找并發(fā)現(xiàn)自己需要的服務(wù)。然后,客戶選擇其中的一個(gè),并與這種服務(wù)捆綁在一起,在一段時(shí)間內(nèi)使用這個(gè)服務(wù)。由于對(duì)這些服務(wù)的發(fā)現(xiàn)和選擇一般不需要人工干預(yù),因此服務(wù)與服務(wù)之間的切換非常迅速。通過(guò)自動(dòng)服務(wù)發(fā)現(xiàn)(AutomatedService Discovery)機(jī)制可以建立非常優(yōu)秀的服務(wù)網(wǎng)絡(luò)。如果有多個(gè)Web服務(wù)提供相似的功能,那么客戶可以很方便地在當(dāng)前使用的服務(wù)出現(xiàn)問(wèn)題時(shí)切換到備份系統(tǒng)中,從而保證系統(tǒng)的健壯性。
通過(guò)使用Web服務(wù),企業(yè)能夠以從前所不可能的方式通過(guò)抽象和混合將自身的電子商務(wù)組件化。當(dāng)一個(gè)企業(yè)的核心競(jìng)爭(zhēng)力被組件化之后,那么這些核心競(jìng)爭(zhēng)力就能夠很方便地在不同的企業(yè)之間共享,同時(shí)架構(gòu)跨企業(yè)的電子商務(wù)應(yīng)用,形成商務(wù)Web。
三、Web服務(wù)在視頻直播系統(tǒng)中的具體應(yīng)用
本文系統(tǒng)是一個(gè)用戶發(fā)布、收看直播節(jié)目的“跨媒體實(shí)時(shí)互動(dòng)網(wǎng)絡(luò)平臺(tái)”。它由主系統(tǒng)、數(shù)據(jù)中心、客戶端等部分組成。本文主要討論主系統(tǒng)與數(shù)據(jù)中心之間的數(shù)據(jù)交換問(wèn)題。
系統(tǒng)結(jié)構(gòu)如圖所示。用戶信息保存在主系統(tǒng)的數(shù)據(jù)庫(kù)中,節(jié)目信息保存在數(shù)據(jù)中心的數(shù)據(jù)庫(kù)中。
主系統(tǒng)中定義了GetUserInfo的方法,返回注冊(cè)用戶的合法性判斷及其它數(shù)據(jù),并向UDDI注冊(cè)中心注冊(cè)該方法。數(shù)據(jù)中心或其它應(yīng)用程序可以在網(wǎng)上通過(guò)發(fā)送SOAP消息調(diào)用這個(gè)方法。同樣,數(shù)據(jù)中心也定義了兩個(gè)方法GetProgramInfo和GetProgramList,返回節(jié)目列表的數(shù)據(jù),供主系統(tǒng)或其它應(yīng)用程序調(diào)用。
利用Web服務(wù)技術(shù)將主系統(tǒng)和數(shù)據(jù)中心提供的服務(wù)進(jìn)行發(fā)布,為其他應(yīng)用提供了可集成的服務(wù)。同時(shí)如果UDDI注冊(cè)中心注冊(cè)了其他的查詢方式,新的查詢方式能夠也能很容易地集成進(jìn)原有應(yīng)用中。
四、結(jié)論
Web服務(wù)技術(shù)逐步成為新一代計(jì)算技術(shù)的導(dǎo)向,在電子商務(wù)、企業(yè)應(yīng)用集成多個(gè)領(lǐng)域發(fā)揮著日益重要的作用。然而作為一種新興技術(shù),Web服務(wù)在安全性、事務(wù)處理能力、可管理能力等方面有所欠缺。如何構(gòu)建一個(gè)安全可靠的Web服務(wù),將是今后研究的重點(diǎn)。
參考文獻(xiàn):
[1]張峰慶、張微晴、張艷慶,J2EE平臺(tái)上基于Web服務(wù)企業(yè)應(yīng)用集成的研究,計(jì)算機(jī)工程與應(yīng)用,2005,41(5):144-146,228.
[2]王真瓊,Web Services安全性研究,中國(guó)科技信息,2008,9:81-83.
[3]王明文、朱清新、卿利,Web服務(wù)架構(gòu),計(jì)算機(jī)應(yīng)用研究,2005,(3):93-94,112.
作者簡(jiǎn)介:
陸露(1983-),女,廣西人,碩士,研究方向:web服務(wù)安全應(yīng)用。