一種基于環(huán)境實時感知的服務(wù)評估及選取方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及web服務(wù)選取方法領(lǐng)域,尤其是一種存在"服務(wù)顛簸"云環(huán)境下服務(wù)質(zhì) 量評估與選取方法。
【背景技術(shù)】
[0002] Web服務(wù)是一種基于XML(Extension Markup Language,即可擴展標記語言)、 WSDL(Web Services Description Language,即網(wǎng)絡(luò)服務(wù)描述語言)和S0AP(Simple Objec t Access Protocol,即簡單對象訪問協(xié)議)等標準的面向服務(wù)架構(gòu)(Service-Oriented Architecture,S0A)的一種實現(xiàn)技術(shù)。Web服務(wù)的核心是使用標準接口,實體接口只需滿足 標準,就能進行相互通信。
[0003] 隨著云計算技術(shù)的迅速普及,Web服務(wù)不斷增加,其發(fā)展勢不可擋。而Web服務(wù)的 成功運作,其關(guān)鍵技術(shù)在于如何為用戶從海量的Web服務(wù)中選擇滿足用戶需求的、高質(zhì)量 的、供需方實現(xiàn)利益最大化的服務(wù)。QoS(Quality of Service,服務(wù)質(zhì)量)是用于描述服務(wù) 能力的指標集,可分為功能性屬性和描述性屬性兩類,功能性屬性指的是對服務(wù)屬性產(chǎn)生 決定性影響的屬性,包括CPU利用率、處理速度、內(nèi)存、網(wǎng)絡(luò)帶寬,丟包率等,而描述性屬性 指的是對元服務(wù)的服務(wù)質(zhì)量沒有決定性影響,例如:截止時間、平均響應(yīng)時間、服務(wù)執(zhí)行期 限、可信度、價格等。
[0004] 然而,在動態(tài)、開放和多樣的云環(huán)境中,由于Q0S的不確定性,存在"服務(wù)顛簸"現(xiàn) 象,即QoS的不確定性使得服務(wù)選取結(jié)果與實際結(jié)果偏差較大。并且特征和需求極其不同 的應(yīng)用程序都爭用有限的網(wǎng)絡(luò)資源,導(dǎo)致負載失衡,無法及時響應(yīng)用戶請求,迫使服務(wù)提供 能力下降。同時,對服務(wù)質(zhì)量的可信性評價往往來源于歷史經(jīng)驗,可信與不可信實體對元服 務(wù)可能做出相同或不相同的評價,而服務(wù)調(diào)度中心也無法同步感知節(jié)點變化,形成穩(wěn)定可 信度。
[0005] 目前,學(xué)術(shù)界就開放的云環(huán)境下服務(wù)動態(tài)選取策略及信譽度評估已經(jīng)有所研究, 文獻1(龍軍,袁鑫攀等.基于環(huán)境感知的可信Qos評價與服務(wù)選取策略[J].電子學(xué) 報.2012, 40(6) :1133-1140)提出了使用不同負載下的Qos特征向量來表征服務(wù)實體的 Qos,采用負載能力特征圖來全面表征元服務(wù)的Qos特征,以更好指導(dǎo)服務(wù)的選擇,雖然給 出了環(huán)境負載與元服務(wù)質(zhì)量的映射,然而仍屬于服務(wù)質(zhì)量的歷史參考數(shù)據(jù),無法及時提供 元服務(wù)質(zhì)量指標。文獻2 (王弦,劉建勛等.面向云環(huán)境的一種負載感知的服務(wù)選擇方法 [J].小型微型計算機系統(tǒng).2014, 35 (9) : 1994-1998)采用LSSM框架來感知用戶滿意度和服 務(wù)負載的變化情況,解決了用戶訪問量超過服務(wù)的負載容量,致使服務(wù)失衡的問題。但是, 文中用戶滿意度屬于事后評價,無法及時感知服務(wù)的變化。不能客觀反映用戶滿意度的真 實性,存在欺騙。文獻3 (何小霞,譚良.一種支持服務(wù)Qos差異度控制的Web服務(wù)發(fā)現(xiàn)模 型[J].計算機科學(xué).2014, 41(8) :202-208)提出了一種支持服務(wù)Qos差異度控制的Web服 務(wù)發(fā)現(xiàn)模型,通過增加第三方監(jiān)控Interceptor,控制用戶的反饋評價和服務(wù)提供者給出的 Qos差異度,對服務(wù)和服務(wù)提供者能有一個較準確的客觀的信譽度評價,使得服務(wù)Qos提供 值更加接近真實值。但是,除了首次服務(wù)Qos由服務(wù)注冊定義以外,后續(xù)服務(wù)調(diào)用的Qos都 是通過事后評價再跟歷史記錄進行加權(quán)平均后得出。文獻4(朱勇,李偉等.一種面向多 用戶的負載感知動態(tài)服務(wù)選擇模型[J].軟件學(xué)報.2014, 25(6):1196-1211)提出了一種面 向多用戶的負載感知的動態(tài)服務(wù)選擇模型以實現(xiàn)動態(tài)負載環(huán)境下的服務(wù)優(yōu)化選擇,保證用 戶端到端QoS需求的前提下,及時而有效地提供效用優(yōu)化的服務(wù)選擇方案。但是,論文假 設(shè)服務(wù)調(diào)用由代理中心進行統(tǒng)一調(diào)用。服務(wù)的負載及性能評估由服務(wù)調(diào)度中心監(jiān)控,未考 慮多個服務(wù)調(diào)度中心同時調(diào)用相同服務(wù)的情境。
[0006] 學(xué)術(shù)界的相關(guān)研究中,對服務(wù)質(zhì)量評估均屬于事后評估,不可及時感知失效服務(wù) 的狀態(tài),所提及的可信度是對服務(wù)能否完成服務(wù)需求的可信程度。
【發(fā)明內(nèi)容】
[0007] 為了克服已有云環(huán)境下服務(wù)動態(tài)選取方式的實時性較差、可靠性較低、公正性較 差的不足,本發(fā)明提供一種實時性良好、可靠性較高、公正性良好的基于環(huán)境實時感知的服 務(wù)評估及選取方法。
[0008] 本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是:
[0009] -種基于環(huán)境實時感知的服務(wù)評估及選取方法,所述評估及選取方法包括以下步 驟:
[0010] 1)當服務(wù)調(diào)度中心接收到用戶需求后,首先對用戶請求進行分析,如果請求的是 單一的元服務(wù),不需要進行需求分解;如果請求的是組合服務(wù),用戶請求分解成元需求,轉(zhuǎn) 換為由眾多元服務(wù)組合完成的服務(wù);
[0011] 2)將轉(zhuǎn)換完成的服務(wù)組合需求進行服務(wù)招標,服務(wù)招標的指標包括了對元服務(wù)的 功能需求以及指標性要求,服務(wù)調(diào)度中心將服務(wù)組合需求中的元需求廣播給在服務(wù)注冊中 心注冊的元服務(wù);
[0012] 3)服務(wù)注冊中心接收到服務(wù)調(diào)度中心發(fā)出的元需求招標請求后,如果滿足服務(wù)招 標需求,元服務(wù)投標,并將滿足需求的元服務(wù)隊列添加到元服務(wù)簇S 1中;元服務(wù)如無法滿足 招標要求,則不會對招標請求進行投標,直接反饋拒絕信息;
[0013] 4)元服務(wù)簇中每個元服務(wù)都包含服務(wù)質(zhì)量感知模塊,由服務(wù)質(zhì)量感知模塊實時感 知服務(wù)本身能完成的影響服務(wù)質(zhì)量的指標,包括完成服務(wù)預(yù)期的時間、服務(wù)指標失效時間、 服務(wù)報價和服務(wù)可靠性,其中服務(wù)預(yù)期時間由服務(wù)節(jié)點性能、負載和網(wǎng)絡(luò)環(huán)境決定。
[0014] 5)收集元服務(wù)簇中服務(wù)質(zhì)量感知模塊反饋的投標信息后,由服務(wù)質(zhì)量評估模型對 投標信息進行分析和計算,獲取投標效益值,其中,對元服務(wù)以往的服務(wù)評價結(jié)果都保存在 服務(wù)注冊中心,服務(wù)質(zhì)量預(yù)測算法結(jié)合投標效益值以及元服務(wù)在服務(wù)注冊中心的信任度評 價指標進行計算;
[0015] 6)將服務(wù)組合形成服務(wù)調(diào)度工作流,服務(wù)調(diào)度工作流的每一節(jié)點由相應(yīng)能提供服 務(wù)的元服務(wù)隊列組成,元服務(wù)隊列是根據(jù)服務(wù)調(diào)度中心收集到的具備投標能力的元服務(wù)組 成,服務(wù)質(zhì)量預(yù)測算法依據(jù)投標服務(wù)響應(yīng)的QoS進行排序;
[0016] 7)根據(jù)服務(wù)工作流運行,每到一個節(jié)點就調(diào)度相應(yīng)的優(yōu)先服務(wù),當服務(wù)質(zhì)量感知 模塊感知到元服務(wù)序列中服務(wù)質(zhì)量發(fā)生較大程度下降,即服務(wù)質(zhì)量低于預(yù)設(shè)閾值,則將服 務(wù)質(zhì)量反饋至服務(wù)調(diào)度中心,服務(wù)質(zhì)量預(yù)測算法根據(jù)反饋值重新對元服務(wù)序列進行重排 序。
[0017] 進一步,所述評估及選取方法還包括以下步驟:
[0018] 8)完成對元服務(wù)的調(diào)用后,需要收集服務(wù)的完成情況信息,并將其與服務(wù)投標指 標進行對比,計算出服務(wù)承諾質(zhì)量與服務(wù)結(jié)果質(zhì)量的比較后的服務(wù)承諾可信度,更新歷史 信任庫。
[0019] 再進一步,所述步驟5)、6)和7)中,服務(wù)質(zhì)量預(yù)測算法中,服務(wù)調(diào)度中心SDC需要 從元服務(wù)簇MSS 1中的每個元服務(wù)隊列中選取一個元服務(wù)MS,給出一個QoS最優(yōu)的MS ;
[0020] 輸入:元服務(wù)簇中每個元服務(wù)隊列的服務(wù)質(zhì)量感知模塊SQPM反饋的QoS矩陣式 (2),服務(wù)的標指標Res 1W及從歷史信任庫中提取的服務(wù)歷史信任值T 1;
[0021] QoS矩陣式⑵表示如下:
[0022]
(2)
[0023] 矩陣中的 <.表示元服務(wù)隊列中的元服務(wù)S1對服務(wù)屬性U的服務(wù)質(zhì)量評價;
[0024] 輸出:從每個元服務(wù)隊列中選擇當前云環(huán)境下最優(yōu)的元服務(wù);
[0025] 第一步,依據(jù)用戶元需求MD進行招標,獲取投標元服務(wù)隊列QoS屬性矩陣式(2), 表示相應(yīng)元服務(wù)隊列中的第u個服務(wù)質(zhì)量屬性的最大值,最小值。
[0026] (3)
[0027] f4)
[0028] 公式(5)是感知元服務(wù)質(zhì)量效用函數(shù)的計算公式。其中,W1G [0,1]并且有
表示各個服務(wù)質(zhì)量屬性所占的權(quán)重。權(quán)重的不同表示了用戶的不同偏好,在元需 求分解階段,根據(jù)用戶的需求對權(quán)重進行設(shè)置。
[0029]
(5)
[0030] 這樣,對于元服務(wù)隊列中的各個服務(wù)的綜合效益值如公式(6)所示:
[0031]
(6)
[0032] 元服務(wù)隊列中的各個服務(wù)的綜合效益值如公式(7)所示:[0033]
C7)
[0034] 歷史信任庫得到元服務(wù)隊列中各個元服務(wù)的信譽度值均值,組成信譽度評價矩
陣,
[0035]
[0036] 將投標QoS矩陣與歷史信任評價矩陣中的各元服務(wù)的信譽度相乘,獲取每個元服 務(wù)的綜合效益值;
[0037]
[0038] 并計算得到投標元服務(wù)隊列的效益值評價矩陣:
[0039]
[0040] 在服務(wù)設(shè)計階段,選取各個元服務(wù)隊列中最優(yōu)的元服務(wù),組成元服務(wù)調(diào)度工作流
[0041]
[00