劉 松,藍(lán) 鷹
(吉林師范大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,吉林 四平 136000)
隨著計(jì)算機(jī)軟件技術(shù)和信息化的高速發(fā)展, 現(xiàn)代高校的日常業(yè)務(wù)通常都是由多個應(yīng)用系統(tǒng)完成的,如高校辦公自動化系統(tǒng)、電子郵件系統(tǒng)、考務(wù)系統(tǒng)、學(xué)生信息管理系統(tǒng)、綜合教務(wù)管理系統(tǒng)等.其中每個應(yīng)用系統(tǒng)都有其具體的任務(wù)職責(zé).通過使用這些應(yīng)用系統(tǒng), 可以提高高校日常業(yè)務(wù)的工作效率、規(guī)范教學(xué)業(yè)務(wù)流程和提高教學(xué)服務(wù)質(zhì)量.
通常這些應(yīng)用系統(tǒng)是在不同時期針對高校各部門、各單位的具體工作來進(jìn)行設(shè)計(jì)開發(fā)的,它們采用不同語言進(jìn)行開發(fā)或建立在不同平臺之上.各應(yīng)用系統(tǒng)間相互獨(dú)立運(yùn)行,它們之間還未實(shí)現(xiàn)數(shù)據(jù)關(guān)聯(lián)和交換,各系統(tǒng)相互交叉,甚至有重復(fù)的信息和數(shù)據(jù).造成了信息和數(shù)據(jù)的重復(fù)處理和更新不同步,甚至不一致,產(chǎn)生了校內(nèi)無統(tǒng)一的信息標(biāo)準(zhǔn),存在數(shù)據(jù)重復(fù)錄入、數(shù)據(jù)統(tǒng)計(jì)不一致的現(xiàn)象,無法形成有效數(shù)據(jù)積累和更高層次的應(yīng)用.因此,很多高校迫切的需要將這些孤立的應(yīng)用系統(tǒng)聯(lián)合起來,在不重新開發(fā)原有系統(tǒng)的情況下,使它們之間能夠順利的進(jìn)行信息交互.為學(xué)校管理和決策提供強(qiáng)有力的數(shù)據(jù)支持,通過系統(tǒng)協(xié)作的方式更好地完成高校的各項(xiàng)教學(xué)任務(wù).
本文提供了一種基于SOA/Web Service的校園網(wǎng)異構(gòu)資源整合研究方案.該方案可以將學(xué)校內(nèi)相對獨(dú)立、分散的各個教學(xué)系統(tǒng)進(jìn)行整合,進(jìn)而消除學(xué)校信息孤島,能夠有效地實(shí)現(xiàn)數(shù)據(jù)共享,從而解決教務(wù)數(shù)據(jù)的重復(fù)管理、數(shù)據(jù)冗余等問題;方案具有復(fù)用性高、擴(kuò)充性好等優(yōu)點(diǎn).
SOA是一種面向服務(wù)的系統(tǒng)應(yīng)用體系架構(gòu),該架構(gòu)提供了一種編程模型,使得分布部署在網(wǎng)絡(luò)上的服務(wù)組件能夠被其他應(yīng)用程序或服務(wù)發(fā)現(xiàn)和調(diào)用.SOA服務(wù)模型中有三種角色,它們分別是服務(wù)提供者、服務(wù)調(diào)用者和服務(wù)注冊器.服務(wù)提供者負(fù)責(zé)服務(wù)功能的具體實(shí)現(xiàn),并通過注冊服務(wù)操作將其所提供的服務(wù)發(fā)布到服務(wù)注冊器,當(dāng)接收到服務(wù)調(diào)用者的服務(wù)請求時,執(zhí)行所請求的服務(wù).服務(wù)調(diào)用者則是服務(wù)執(zhí)行的發(fā)起者,首先需要到服務(wù)注冊器中查找符合條件的服務(wù);然后根據(jù)服務(wù)信息進(jìn)行服務(wù)綁定/調(diào)用,以獲得需要的功能.而服務(wù)注冊器則用來提供服務(wù)提供者注冊服務(wù)、提供對服務(wù)的分類和查找功能,以便服務(wù)調(diào)用者發(fā)現(xiàn)服務(wù)[1].
SOA架構(gòu)具有語言獨(dú)立、松耦合、跨平臺等優(yōu)點(diǎn).SOA架構(gòu)語言獨(dú)立的優(yōu)點(diǎn)能將不同語言和不同版本的高校應(yīng)用系統(tǒng)集成起來.松耦合特性能方便高校各個系統(tǒng)流程的優(yōu)化使交互雙方中一方的改動不會影響到另一方,降低單獨(dú)高校子系統(tǒng)升級時帶來的附加成本.
SOA只是一種概念模型,要實(shí)現(xiàn)該模型則需要一種與之對應(yīng)的具體技術(shù)手段.基于Web服務(wù)的體系結(jié)構(gòu)是比較理想的SOA實(shí)現(xiàn)方式.Web Service是自描述和模塊化的應(yīng)用程序,它將業(yè)務(wù)邏輯分解為服務(wù)[2],這些服務(wù)通過網(wǎng)絡(luò)發(fā)布、發(fā)現(xiàn)和引用.采用XML描述標(biāo)準(zhǔn),Web Service能夠用任何語言在任何協(xié)議及平臺上開發(fā)松散耦合的應(yīng)用程序組件,能夠方便的發(fā)布作為服務(wù)的業(yè)務(wù)應(yīng)用程序.Web服務(wù)集成實(shí)現(xiàn)模型從下到上共分為6層: 網(wǎng)絡(luò)通信層、消息傳輸層、服務(wù)描述層、服務(wù)發(fā)現(xiàn)層、服務(wù)保證層和服務(wù)組合層[3],如圖1.
圖1 Web Service 集成模型
以學(xué)生信息數(shù)據(jù)庫中關(guān)于學(xué)生基本信息操作調(diào)用為例,圖2描述了通過“學(xué)生基本信息更新Web Service”使得學(xué)生信息數(shù)據(jù)庫中的數(shù)據(jù)信息在電子郵件系統(tǒng)、考務(wù)系統(tǒng)、辦公自動化系統(tǒng)、學(xué)生信息管理系統(tǒng)和綜合教務(wù)管理系統(tǒng)實(shí)現(xiàn)共享及更新一致性.Web Service的開發(fā)工具采用了.NET,其底層采用通用語言運(yùn)行環(huán)境(Common LanguageRuntime).類似于Java的虛擬機(jī), 使應(yīng)用程序具備跨語言、跨平臺的能力.服務(wù)調(diào)用工具則根據(jù)各個其它子系統(tǒng)
的實(shí)際開發(fā)語言情況,可以分別采用.NET、VB、VC、Java等語言.
圖2 學(xué)生基本信息更新Web Service實(shí)例
綜上所述,基于SOA/Web Service的校園網(wǎng)異構(gòu)資源整合能較好地解決高校原有應(yīng)用系統(tǒng)集成的問題,并建立了一套獨(dú)立于語言并且跨平臺的高校原有系統(tǒng)集成方案.該方案不僅保留了高校原有系統(tǒng)資源,而且為教務(wù)業(yè)務(wù)流程的變更提供了很好的靈活性.隨著SOA體系架構(gòu)的進(jìn)一步成熟和相應(yīng)的應(yīng)用實(shí)施技術(shù)的完善,SOA體系架構(gòu)將在數(shù)字化校園網(wǎng)集成建設(shè)上產(chǎn)生較為深遠(yuǎn)的影響.
參考文獻(xiàn):
[1]BROWN A, JOHNST ON S, KELLY K . Using Service2 Oriented Architecture and Component2 Based Development to Build Service App licati ons[EB /OL]. http:// www. rati onal.com / media / whitepapers/ TP032 . pdf, 20032-09 .
[2]W3CWorking Draft. Web Services Architecture Requirements[EB /OL].http:/ /www.w3.org/TR /2002 /WD2 wreqs2 20020819# I DA I 02 I B, 2002/2/08.
[3]李安渝. Web Services的技術(shù)和實(shí)現(xiàn)[M].北京:國防工業(yè)出版社,2003 .