1.引言
隨著Internet以及Internet計算技術(shù)的飛速發(fā)展,使原本相互孤立的資源互聯(lián)共享成為可能。目前對Web服務(wù)的集成研究雖然已經(jīng)取得了很大的進展,但仍然存在很多問題尚未解決。傳統(tǒng)的Web服務(wù)集成流程是靜態(tài)的,傳統(tǒng)的Web服務(wù)集成流程系統(tǒng)也不能適應(yīng)這種動態(tài)變化。
針對以上問題,本文提出了基于Agent的Web服務(wù)集成技術(shù),設(shè)計并實現(xiàn)了一種基于Agent技術(shù)的Web服務(wù)集成原型系統(tǒng),使得Web服務(wù)集成系統(tǒng)的執(zhí)行方式由原來的集中式轉(zhuǎn)為分布式。
2.Web服務(wù)技術(shù)
2.1 Web服務(wù)
Web服務(wù)是一個描述了一組可以在網(wǎng)絡(luò)上通過標(biāo)準(zhǔn)化的XML消息來通信的軟件接口。它是自包含、自描述、模塊化的應(yīng)用程序,可以被發(fā)布、定位,并通過Web調(diào)用,是一種組件服務(wù)。也可以說Web服務(wù)就是一個應(yīng)用程序,能夠用編程的方法通過Web來調(diào)用這個應(yīng)用程序。
2.2 Web服務(wù)的體系結(jié)構(gòu)
Web服務(wù)體系結(jié)構(gòu)是一種面向服務(wù)的構(gòu)架(Services Oriented Architecture,SOA),是基于三個角色(服務(wù)提供者、服務(wù)請求者、服務(wù)中介)和三個操作(發(fā)布、發(fā)現(xiàn)、綁定)構(gòu)建的。Web服務(wù)在發(fā)布服務(wù)時使用通用描述、查找和集成服務(wù)協(xié)議UDDI;查找服務(wù)時使用UDDI和Web服務(wù)描述語言WSDL,綁定服務(wù)使用簡單對象訪問協(xié)議SOAP.
3.Agent技術(shù)
3.1 Agent的基本概念
Agent技術(shù)于人工智能,現(xiàn)在正向計算機的各個領(lǐng)域滲透。Agent具有以下五個特性:自主性、主動性、社會性、應(yīng)激性和面向目標(biāo)性。
3.2 Agent的基本結(jié)構(gòu)
Agent的結(jié)構(gòu)是建造Agent的一套特定方法,它說明Agent各個部件的組成關(guān)系以及部件之間的交互規(guī)則。Agent結(jié)構(gòu)說明了Agent獲得的數(shù)據(jù)和它的當(dāng)前內(nèi)部狀態(tài)如何決定其采取動作及決定和修改Agent的未來的狀態(tài)。Agent的結(jié)構(gòu)分為三類:思考型結(jié)構(gòu)、反應(yīng)型結(jié)構(gòu)和混合型結(jié)構(gòu)。
3.3 Agent通信機制
通信機制構(gòu)成了支持Agent之間互操作和協(xié)同工作的重要基礎(chǔ)。建立通信標(biāo)準(zhǔn)是設(shè)計通信機制的關(guān)鍵,可促進通信接口和Agent的實現(xiàn)相分離。軟件Agent要通過一種通用的通信語言來解決上述問題。
4.基于Agent的Web服務(wù)集成系統(tǒng)的設(shè)計與實現(xiàn)
4.1 集成系統(tǒng)主要功能模型
系統(tǒng)原型具有以下幾個主要功能:可以設(shè)計、編輯Web服務(wù)組合流程;Web服務(wù)組合流程執(zhí)行;Web服務(wù)組合流程執(zhí)行時的監(jiān)控。
系統(tǒng)在執(zhí)行過程中所需的前臺程序輸入Web服務(wù)組合流程,后臺程序(協(xié)同Agent)負責(zé)分解該流程,然后將分解的流程腳本發(fā)送給相關(guān)的Web服務(wù)的代理(服務(wù)Agent),由這些服務(wù)Agent調(diào)用各Web服務(wù)并協(xié)同完成整個流程,最后將流程執(zhí)行的最終結(jié)果返回給協(xié)同Agent.如圖1所示。
4.2 抽象三層體系架構(gòu)
使用一種抽象三層體系架構(gòu)來定義基于Agent的Web服務(wù)集成框架。圖2描述了業(yè)務(wù)處理流程、Agent和Web服務(wù)之間的關(guān)系。
在圖2中,最上層是業(yè)務(wù)流程層,主要負責(zé)業(yè)務(wù)流程的制定,確定業(yè)務(wù)流程為完成目標(biāo)所必須包含的各個功能組件及工作順序;中間層是Agent處理層,我們將軟件Agent系統(tǒng)作為軟件中間件,主要負責(zé)兩個方面的工作:
一是智能評估、選擇和定制與業(yè)務(wù)處理流程功能需求相匹配的Web服務(wù),包括監(jiān)測和錯誤、異常處理等功能;二是負責(zé)流程中各個Web服務(wù)之間的通信工作;最底層是Web服務(wù)層,它由遍布在網(wǎng)絡(luò)中的各個Web服務(wù)組成,為集成業(yè)務(wù)流程提供各種功能的Web服務(wù)。
5.實例分析
5.1 問題描述
使用一個供應(yīng)鏈中的訂單處理流程來說明上述體系結(jié)構(gòu)的實現(xiàn)過程:當(dāng)企業(yè)收到一個訂單以后,首先需要對庫存量進行查詢,當(dāng)庫存量不能滿足該訂單的需求量時,則通知客戶不能滿足需求,結(jié)束該次訂單處理過程;當(dāng)庫存量滿足需求量的時候,則發(fā)送賬單給客戶,當(dāng)客戶支付完賬單之后,發(fā)送發(fā)貨命令,該次訂單處理過程結(jié)束。
5.2 業(yè)務(wù)流程層的設(shè)計
根據(jù)流程圖的功能需求,可以得到訂單處理過程平臺無關(guān)的模型,用UML活動圖表示出來如圖3所示。
6.結(jié)論
與已有的W e b服務(wù)集成方法相比,本文所提出的Web服務(wù)集成原型系統(tǒng)依靠Agent的特性,使得Web服務(wù)集成系統(tǒng)的執(zhí)行方式由原來的集中式轉(zhuǎn)為分布式,通過Agent技術(shù)強大的通信能力克服了以往Web服務(wù)之間通信方式的單一性,提高了系統(tǒng)的運行效率。
-
Web
+關(guān)注
關(guān)注
2文章
1253瀏覽量
69060 -
協(xié)議
+關(guān)注
關(guān)注
2文章
592瀏覽量
39055 -
Agent
+關(guān)注
關(guān)注
0文章
102瀏覽量
26640
發(fā)布評論請先 登錄
相關(guān)推薦
評論