劉勇,朱景福,王雪
(黑龍江八一農(nóng)墾大學信息技術學院,大慶163319)
服務的概念,可以說得到了各行各業(yè)的關注,但因行業(yè)不同,它代表的意義也不同。在計算機行業(yè)中,服務就是由提供者提供給接收者的功能系統(tǒng),并以服務描述的形式構成兩者之間的一種契約關系,其中提供者承諾提供,而接收者同意接收[1]??梢哉J為,任何系統(tǒng)服務都應成為計算機實現(xiàn)的業(yè)務流程的一部分,換句話說,都是其他企業(yè)計算行為的上游或者下游,只有如此,它才真正成為服務。
在計算機行業(yè)中,服務的種類有很多,提供的服務技術也是多樣的。如同其他技術一樣,它們之間有著競爭和互補的關系。尤其是CORBA 的系統(tǒng)級的服務,對開發(fā)企業(yè)級應用是非常重要的。EJB 作為同種技術,與CORBA 相比可謂各有千秋。
以中間件要求為標準對這兩種技術做一下比較,如表1 所示。
通過表1,可以看出CORBA、EJB 兩種技術在很多性能上具有互補性。將這兩種技術結(jié)合,用來實現(xiàn)一種理想的協(xié)同協(xié)作模型,使其能夠達到跨語言、跨平臺、高服務質(zhì)量的特性。
在協(xié)同工作過程中,協(xié)作者對協(xié)作功能的要求可以劃分為如下幾個方面:
表1 兩種中間件技術的綜合比較Table 1 Comprehensive comparison of two middle ware technology
(1)在協(xié)作的過程中對其他協(xié)作者進行實時感知[2];
(2)根據(jù)協(xié)同協(xié)作的需要,與群體內(nèi)其他成員進行必要的信息交互[3];
(3)根據(jù)所擁有的關于整個群體的協(xié)作信息,在具體的協(xié)作規(guī)則(知識)指導下,制定和規(guī)劃自身在群體中的協(xié)作決策;
(4)根據(jù)所制定的協(xié)作決策,調(diào)用、執(zhí)行相應的功能,對其他協(xié)作者施行相應的影響,完成預期的協(xié)作目標;
(5)在協(xié)作過程中,根據(jù)協(xié)作的需要對協(xié)作決策加以層次式、動態(tài)的調(diào)整[5],以適應協(xié)同協(xié)作中的多變化性的應用特點。
根據(jù)以上的需求分析,可以將其功能結(jié)構歸納為以下幾個功能模塊,如表2 所示。
表2 協(xié)同協(xié)作模塊Table 2 Collaboration model of together
統(tǒng)一接口模塊,提供給客戶高效率的訪問能力??梢员苊饪蛻羰褂枚鄠€服務器時的煩瑣狀況及可能出現(xiàn)的邏輯不一致或服務不協(xié)調(diào)的問題??蛻艏瓤梢允褂脝我唤涌?,也可以使用多接口請求服務。
服務協(xié)調(diào)模塊,分布的多個服務器負責給客戶提供多種服務,對服務器而言,一般只是被調(diào)用的關系,那么這些需要協(xié)作的服務器之間,同樣也需要有一種機制來協(xié)調(diào),該協(xié)調(diào)機制是服務器與其他計算實體(其他服務器或客戶),進行交互的統(tǒng)一手段[4]。
協(xié)作感知模塊,在協(xié)同工作中,對協(xié)同感知的要求必不可少,由于協(xié)同工作的形式的不同而有感知粒度粗細之分。感知粒度是一個用戶對另外用戶在共享工作空間所有的狀態(tài)、動作、意圖和思想等細節(jié)的知覺程度。盡可能將信息準確實時地表達出來,使用戶能自然容易地獲取和使用知識是系統(tǒng)設計的主要目標。
協(xié)作信息綜合處理模塊,對通過與其他模塊交互所獲取的信息,進行綜合處理,形成全局的協(xié)作態(tài)勢信息[5]。
協(xié)作管理模塊,根據(jù)協(xié)作者對協(xié)同條件、環(huán)境要求的不同,在協(xié)作過程中適時地做出協(xié)作決策,并根據(jù)動態(tài)變化實時加以調(diào)整。
協(xié)作環(huán)境管理模塊,協(xié)同工作環(huán)境應該改變單一應用的系統(tǒng)模式,應該具有選擇性和可變化性。
協(xié)作工具管理模塊,將所有的協(xié)作過程中有可能用到的工具集成在一個模塊中,加以協(xié)調(diào)管理。用戶可以根據(jù)需求變化而改變工具集,大大增加了系統(tǒng)的靈活性和可擴展性。
協(xié)作執(zhí)行模塊,根據(jù)協(xié)作管理模塊所做出的協(xié)作決策,對參與協(xié)作者的行為活動加以控制,以提高協(xié)同工作的工作效率。
協(xié)作者在協(xié)同環(huán)境中的協(xié)作是由各模塊互相合作實現(xiàn)的,如圖1 所示。
由圖1 可知,協(xié)作者使用統(tǒng)一接口請求服務,不同的接口滿足不同顯示的需要。通過協(xié)作管理模塊和服務協(xié)調(diào)模塊,給予用戶最有效的服務[6]。管理、信息模塊分別同相應的數(shù)據(jù)庫相聯(lián),可以分散用戶的服務請求,減少并發(fā)沖突,且易于相應信息的管理。最后,通過協(xié)作執(zhí)行模塊完成協(xié)同工作活動,并將結(jié)果寫入共享信息庫。其他的協(xié)作者又可以通過統(tǒng)一接口查看共享信息庫中的內(nèi)容[7]。如此不斷的循環(huán),最終完成協(xié)同工作。
利用CORBA 與EJB 在技術和服務上的互補性,實現(xiàn)該協(xié)同協(xié)作模型。其體系結(jié)構如圖2 所示。
利用CORBA 的核心ORB 總線技術,構建CORBA 服務器作為網(wǎng)絡通信應用,以實現(xiàn)系統(tǒng)的跨平臺的特點。利用EJB 服務器作為系統(tǒng)的邏輯層,處理系統(tǒng)中的事物[8]。二者良好的結(jié)合,促使系統(tǒng)的各方面的性能,逐漸接近用戶完美的要求。不但可以實現(xiàn)傳統(tǒng)意義上的協(xié)同,還可以將其擴展為可實現(xiàn)移動協(xié)同工作的環(huán)境。
隨著電子商務的發(fā)展,電子商務的模式也在不斷的變化。網(wǎng)絡通信的不斷發(fā)展使人們對移動電子商務產(chǎn)生了濃厚的興趣。而且,對電子商務的理解也不再局限于簡單的在線支付。人們漸漸要求在線模式與實地進行商務事件的處理模式具有可比性[9]。
以網(wǎng)上購物為例。利用上述協(xié)同協(xié)作模型,可以構建一個購物環(huán)境,使其具有如下特點:
(1)顧客可以與購物環(huán)境中商品進行自然的、直觀的交互;
(2)在購物環(huán)境中顧客可以不受任何時間和空間的局限,進行自由的交流;
(3)顧客可以任意查閱或評價任一商品的信息;
(4)顧客可以按照既定模式處理購物環(huán)境中的商品。
通過對計算機中的服務、CORBA 技術、EJB 技術的研究,設計了一種基于中間件和服務的協(xié)同協(xié)作模型,使其能夠達到跨語言、跨平臺、高服務質(zhì)量等特性。擴展了原有的協(xié)同工作空間,可以進行移動協(xié)同工作。并將其簡單應用在電子商務中,驗證了這種模型的可用性。但還需要在實踐中,不斷驗證優(yōu)化該協(xié)同協(xié)作模型。
[1] 劉紹華,魏峻,黃濤.基于服務協(xié)作中間件的動態(tài)流程模型[J].軟件學報,2004(10):23-26.
[2] Shiping Chen,Yan Liu,Ian Gorton,et al.Performance prediction of component-based applications [J].The Journal of Systems and Software,2005(74):35-43.
[3] 趙連軍,彭炎.基于組件技術的應用系統(tǒng)開發(fā)服務模型[J].計算機工程與應用,2004(6):19-24.
[4] 彭軍,吳敏.基于行為預測的多智能體協(xié)作模型[J].計算機工程與應用,2005(9):23-26.
[5] 柳巧玲,叢秋實,黃作明.基于Web 服務的業(yè)務流程管理集成應用研究[J].情報雜志,2007(2):15-19.
[6] 李陽,周懌,吳朝暉.基于網(wǎng)絡構件的軟件體系結(jié)構抽象模型[J].浙江大學學報(工學版),2004(11):31-36.
[7] 倪強,朱光喜.計算機支持下的協(xié)同工作的研究現(xiàn)狀綜述[J].計算機工程與應用,2000(4):42-45.
[8] 王宏斌.消息中間件技術的研究和實踐[D].杭州:浙江大學,2004.
[9] 徐遠芳.年消息中間件在Web 服務中的應用及面向Web 服務的消息中間件設計[D].南寧:廣西大學,2004.