文/黃余 朱秀娟
Web服務組合方法
文/黃余 朱秀娟
本文通過對Web服務組合的定義介紹,歸納介紹了目前主流的語義Web服務服務組合、BPEL的Web服務組合方法、于Petri網的Web服務組合方法以及基于Qos的Web服務組合方法進行了介紹四種常用的組合方法。為Web服務組合研究,提供一個小小的歸納,明確其研究關鍵點。
Web服務組合 方法研究
隨著對Web服務的業務能力要求的逐漸提高,Web服務組合理論應運產生。基于XML的Web服務技術迅速發展,為互聯網應用提供了一種共享數據的有效手段。Web服務的高效執行方式,Web服務與其他成熟技術的有機結合以及Web服務的組合是解決現實應用問題的重要技術。下面我們將對目前常用的Web服務組合方法進行分類并其對流程以及特點介紹,以發現目前Web組合方法的研究關鍵點及不足之處。
BPE是一種基于業務執行流程,使用XML編寫的編程語言,是自動化業務流程的形式規約語言,在Web服務自動化業務流程中被廣泛應用。
主要采用的為業務流程進行的編制和為業務協作的編排兩種服務組合方式,這兩個描述方法都被BPEL所支持,這樣既可編寫有可執行服務組合過程和定義服務協議。通過BPEL流程,用于表述特定業務的處理邏輯關系和算法,以支持面向過程的Web服務組合的方法。通過把現有的服務進行組合,形成一個新的服務,服務就成為了一個過程,而參與這個過程組合的稱為參與者,消息的交換的行為稱為活動,參與者則通過WSDL進行相互活動。
語義Web服務是為了計算機能過理解Web服務采用的一種方法描述的,目的是讓Web服務成為計算機能夠理解的實體,使Web服務能以開放的方式為應用程序提供服務。語義Web服務是由Web服務組合和語義Web組合而成,是能被本計算機理解和解釋的一種服務信息。隨著動態Web技術的普及,基于語義Web服務將大大增強其交互的處理能力,增強其Web上資源的管理效率。
語義Web服務將Web服務技術與語義Web的思想結合在一起,把服務賦予了語義的靈魂,語義為Web服務的描述加入了足夠的信息,使Web服務成為能夠被計算機實體。進而使Web服務能過實現自動化和智能化,是Web服務自動組合的必要基礎。由于語義Web服務擁有足夠的語義信息并且它還具備高度可集成和松散耦合的能力,服務中資源能過被自動的發現、組合。語義Web服務可以通過關鍵字和內容獲得資源,WSMO、OWL-S、SAWSDL等較為成熟的語義Web服務描述語言做為服務的本體,自動的去調用、發現、組合、檢測服務。利用語義推理技術,在語義Web服務的本體語言提供靜態只是和Web服務能力支持下,查找出限定調下滿足需求的服務候選集,并將它們組合起來,形成新的功能更強大的服務。
由于Petri網能夠表達并發的事件,被認為是自動化理論的一種,被稱為Petri網是所有流程定義語言之母。Petri網是簡單的過程模型,由兩種節點:庫所和變遷,有向弧,以及令牌等元素組成的。 庫所(Place)圓形節點;變遷(Transition)方形節點;有向弧(Connection)是庫所和變遷之間的有向弧;令牌(Token)是庫所中的動態對象,可以從一個庫所移動到另一個庫所,它們之間的活動由一定的規則加以限制。通過對Petri網分析我們發現與Web服務組合的圖形非常相似,我們嘗試把一個Web服務組合狀態圖映射為Petri網,進而求解。
Web服務組合使用業務過程語言和編程語言構造,跨域工作需通過工作流模型進行,該模型應具備成熟性、易用性等特點。我們把Web服務組合狀態圖映射為Petri網,一個變遷由Web服務操作表示,并且有三個端口:輸入庫、所和輸出庫所、控制庫所,消息表示為令牌,服務動態組合時一個操作的效應/前提就是一個任務的效應/前提。為Web服務組合建立一個直觀的,圖形化的工具的分析模型。
以上三種是比較傳統的Web服務組合的研究方法,它們間相互交叉。這些方法主要是側重于Web服務組標準方面的功能屬性。而對價格、可靠性、執行時間等用戶所最關心的非功能屬性研究QoS存在不足。
非功能的Qos屬性是保障Web服務,系統運營成功和客戶服務選擇的重要依據。因此我們在Web服務組合過程中我們通常把Qos作為組合選擇的一個標準。然而不同Web服務確定不同的Qos,如何從眾多的服務候選集中選擇出客戶需要的Web服務最優解并把它組合起來,因此我們就需要采用基于Qos選擇相同的服務。
Qos做為Web服務組合的一種限制條件,根據使用者對Qos做出的限制條件,選擇出適合的服務組合,產生的服務組合最終必須滿足使用者的一切Qos限制條件。那么基于Qos的服務器組合選擇就應該對具有相同功能的Web服務進行組合選擇。通常情況下我們需把基于Qos的服務器組合問題轉化為數學問題,目前比較流行的是多屬性決策問題、帶QoS約束的單目標組合優化問題、多選擇背包問題、以及整數、線性規劃問題這五種方式。
基于QOS的Web的服務選擇其核心就是一個優化組合問題,常用的策略方法有以下三種:全局最優策略、局部最優策略、混合策略。全局最優策略關注于在全部的服務器組合方案中確定出最優的方案,找出全局的最優QOS值,這個方法雖然得到了全局最優解,但缺點是算法復雜、資源浪費。局部最優致力于對單個抽象服務的組合方案,為每個抽象服務選擇出Qos值得最優候選服務方案,再根據Qos限制的條件將這些Qos值取加權值,在把這些方案組合起來,使之成為一個整體。但由于這些服務相互間存在著不同的抽象聯系,實際上并是是一個真正的整體,所以該方法得到的解往往是局部最優,而不是整體最優解。混合組合策略是把全局最優策略和全局策略結合起來交叉使用。具體方法是,現將每個抽象服務的候選策略通過局部最優策略過濾掉,而后在對剩余服務應用全局最優策略。該方法既然可以得到全局最優解,既節約了時間,又大大減少了系統資源的使用。因此我們把混合組合策略作為我們QOS的Web的服務選擇最常用策略。
本文從Web服務組合方法、流程以及特點進行了介紹,發現服務的自動、高效的組合,就需解決服務冗余問題和簡單組合問題,使服務得到增值。其根本就是實現Web服務的重用,避免資源浪費問題,而目前在兩個層面基礎問題需要解決:
不論什么語義系統都缺乏統一、良好的語言規范,對跨組織實現缺乏基礎支持;
缺乏完善的評價模型。
[1]倪晚成,劉連臣.Web服務組合方法綜述[J].計算機工程,2008,34(04):79.81.
作者單位 宜賓職業技術學院 四川省宜賓市 644003
黃余(1981-),男,四川省內江市人。碩士學位。講師。主要研究方向為神經網絡,計算機網絡。朱秀娟,女,碩士學位。實驗師。主要研究方向為神經網絡,計算機網絡。