張?jiān)朴拢钏胤?,吳俊,房秉?/p>
(1. 中國(guó)聯(lián)通研究院,北京 100048;2. 北京郵電大學(xué) 經(jīng)濟(jì)管理學(xué)院,北京 100876)
云計(jì)算作為信息通信技術(shù)(ICT, information and communication technology)轉(zhuǎn)型機(jī)遇的發(fā)展趨勢(shì),已經(jīng)得到了國(guó)內(nèi)外業(yè)界的廣泛認(rèn)同,很多市場(chǎng)調(diào)研機(jī)構(gòu)紛紛預(yù)測(cè)云服務(wù)將成為全球增長(zhǎng)速度最快的市場(chǎng),我國(guó)政府在國(guó)家戰(zhàn)略高度也積極推進(jìn)國(guó)家云計(jì)劃。
云計(jì)算環(huán)境下,一些大型企業(yè)紛紛將傳統(tǒng)業(yè)務(wù)向云服務(wù)轉(zhuǎn)型,組建企業(yè)云,形成云服務(wù)資源池。例如,亞馬遜建立專門(mén)的數(shù)據(jù)中心,以云服務(wù)的形式向用戶和開(kāi)發(fā)者提供存儲(chǔ)和計(jì)算資源。云計(jì)算發(fā)展趨勢(shì)下,企業(yè)的業(yè)務(wù)以云服務(wù)形式進(jìn)行共享和集成。隨著云計(jì)算在企業(yè)的廣泛應(yīng)用,必將催生大量服務(wù)。以電信行業(yè)為例,國(guó)內(nèi)外電信運(yùn)營(yíng)企業(yè)紛紛開(kāi)展云計(jì)算相關(guān)研究和應(yīng)用,逐漸形成基礎(chǔ)設(shè)施即服務(wù)(IaaS, infrastructure as a service)、平臺(tái)即服務(wù)(PaaS, platform as a service)和軟件即服務(wù)(SaaS,software as a service)3個(gè)層次的服務(wù)資源池,服務(wù)資源將呈現(xiàn)規(guī)?;蜕虡I(yè)化特點(diǎn)。這種情況下,對(duì)于企業(yè)內(nèi)部或外部用戶需求,有效的服務(wù)選擇方法,對(duì)于提高服務(wù)選擇結(jié)果的有效性和服務(wù)資源的整體利用率具有重要意義。
隨著服務(wù)計(jì)算思想在企業(yè)界和學(xué)術(shù)界的擴(kuò)展與滲透,服務(wù)選擇相關(guān)研究近幾年得到國(guó)內(nèi)外學(xué)者重視,取得了豐富的研究成果。服務(wù)計(jì)算環(huán)境下的服務(wù)選擇是指根據(jù)用戶需求,包括功能性需求和非功能性需求,從服務(wù)資源池中選擇出滿足用戶需求的服務(wù)。
基于功能需求的服務(wù)匹配是指根據(jù)用戶對(duì)服務(wù)的功能性需求描述,例如服務(wù)的輸入輸出接口描述,從服務(wù)資源池內(nèi)選擇出與功能需求相匹配的服務(wù)流程,服務(wù)流程由一個(gè)或者多個(gè)抽象服務(wù)節(jié)點(diǎn)依一定的流程結(jié)構(gòu)組合而成,每個(gè)抽象服務(wù)對(duì)應(yīng)服務(wù)資源池內(nèi)一個(gè)或者多個(gè)功能相同的具體服務(wù)。相關(guān)研究主要是針對(duì)Web服務(wù)選擇展開(kāi),采用基于關(guān)鍵詞[1]和基于語(yǔ)義的服務(wù)[2~4]匹配方法等。查全率和查準(zhǔn)率是關(guān)鍵詞匹配方法面臨的兩大研究難點(diǎn),基于語(yǔ)義的方法可以改善這一問(wèn)題。語(yǔ)義Web服務(wù)的語(yǔ)義信息是以本體為基礎(chǔ)實(shí)現(xiàn),而現(xiàn)實(shí)應(yīng)用系統(tǒng)中難以構(gòu)建完善的本體庫(kù),且語(yǔ)義異構(gòu)等現(xiàn)象普遍存在,信息描述不能對(duì)語(yǔ)義邏輯提供充分的支持。文獻(xiàn)[4]通過(guò)定義良好的語(yǔ)義信息,提高服務(wù)選擇方法的效率。
基于非功能性需求的服務(wù)選擇是指基于特定的抽象服務(wù)流程,根據(jù)用戶對(duì)服務(wù)的非功能性需求以及服務(wù)資源池內(nèi)服務(wù)的運(yùn)行狀態(tài)等信息,為抽象服務(wù)流程中的每個(gè)節(jié)點(diǎn)選擇出一個(gè)或者一組具體服務(wù)。相關(guān)研究主要集中在基于QoS需求的服務(wù)選擇方法研究,包括服務(wù)質(zhì)量模型[5,6]、QoS局部最優(yōu)服務(wù)選擇[7]、QoS全局最優(yōu)服務(wù)選擇[8~10]以及基于信任[11,12]和服務(wù)關(guān)聯(lián)[13,14]等因素的服務(wù)選擇。
上述研究主要是針對(duì)服務(wù)計(jì)算環(huán)境下服務(wù)選擇的特點(diǎn)展開(kāi)。服務(wù)計(jì)算環(huán)境下,服務(wù)資源具有海量特點(diǎn),同時(shí)服務(wù)類(lèi)型多種多樣,也具有海量特點(diǎn),各服務(wù)提供商通過(guò)公共注冊(cè)中心進(jìn)行服務(wù)注冊(cè),由服務(wù)中介或者服務(wù)選擇平臺(tái)根據(jù)用戶需求進(jìn)行服務(wù)選擇。因此,服務(wù)計(jì)算環(huán)境下服務(wù)選擇具有2個(gè)特點(diǎn):面向海量服務(wù)資源和面向用戶?;谶@2個(gè)特點(diǎn),現(xiàn)有相關(guān)研究主要集中在:基于用戶需求(包括對(duì)服務(wù)的功能需求和非功能需求),在海量服務(wù)資源中選擇出最優(yōu)[8]或者滿足用戶需求[15]的服務(wù)。
云計(jì)算環(huán)境下服務(wù)選擇在一定程度上與服務(wù)計(jì)算環(huán)境下的服務(wù)選擇類(lèi)似,但同時(shí)具有自身的特點(diǎn)。隨著云計(jì)算在企業(yè)的廣泛應(yīng)用,必將催生大量云服務(wù),這一點(diǎn)與服務(wù)計(jì)算環(huán)境類(lèi)似,可以借鑒相關(guān)的服務(wù)選擇方法和研究成果。然而,在同一朵云中,服務(wù)的類(lèi)型一般不會(huì)出現(xiàn)海量特點(diǎn),例如,亞馬遜云,提供的服務(wù)類(lèi)型包括存儲(chǔ)、計(jì)算、數(shù)據(jù)庫(kù)和網(wǎng)絡(luò)等 11類(lèi)[16],其中以計(jì)算和存儲(chǔ)服務(wù)為主。云計(jì)算環(huán)境下,政府或者大型集團(tuán)企業(yè)(在本文中統(tǒng)稱為服務(wù)提供商)構(gòu)建“政府云”或“企業(yè)云”,服務(wù)提供商根據(jù)用戶需求進(jìn)行服務(wù)選擇。服務(wù)選擇過(guò)程不僅考慮用戶需求,同時(shí)關(guān)注提供商服務(wù)資源池的資源調(diào)度問(wèn)題。因此,與服務(wù)計(jì)算環(huán)境下服務(wù)選擇相比,云計(jì)算環(huán)境下服務(wù)資源選擇具有2個(gè)特點(diǎn):一方面,服務(wù)資源類(lèi)型有限;另一方面,在考慮用戶需求的同時(shí)兼顧服務(wù)資源調(diào)度。目前,服務(wù)選擇相關(guān)研究主要集中在基于功能和非功能需求的服務(wù)選擇方法,兼顧服務(wù)資源調(diào)度的服務(wù)選擇相關(guān)研究鮮有提及。
本文基于服務(wù)選擇現(xiàn)有研究基礎(chǔ),針對(duì)云計(jì)算環(huán)境下的服務(wù)選擇特點(diǎn),從服務(wù)提供商角度出發(fā),研究云計(jì)算環(huán)境下的服務(wù)選擇問(wèn)題。首先,分析云服務(wù)提供商的服務(wù)資源特點(diǎn),對(duì)服務(wù)資源池進(jìn)行形式化描述。進(jìn)而,提出一種兼顧用戶需求和服務(wù)資源調(diào)度的服務(wù)選擇方法,重點(diǎn)分析3種服務(wù)資源調(diào)度原則,分別構(gòu)建計(jì)算規(guī)則,并將其引入到服務(wù)選擇模型,建立基于用戶需求和服務(wù)資源調(diào)度的服務(wù)選擇數(shù)學(xué)模型。設(shè)計(jì)智能算法進(jìn)行求解。最后進(jìn)行算例分析。
為清楚地描述服務(wù)選擇流程,首先對(duì)云服務(wù)資源池進(jìn)行形式化描述。然后,從云服務(wù)提供商角度出發(fā),給出服務(wù)選擇總體思路,并設(shè)計(jì)具體服務(wù)選擇流程。
云服務(wù)資源池由多個(gè)云服務(wù)構(gòu)成,每個(gè)云服務(wù)具有一定的業(yè)務(wù)類(lèi)型。為便于描述,首先對(duì)云服務(wù)資源池的劃分進(jìn)行假設(shè)并對(duì)相關(guān)概念進(jìn)行形式化定義。
假設(shè) 1 假設(shè)云服務(wù)提供商的服務(wù)資源能夠按照功能進(jìn)行分組,將所有服務(wù)資源分為若干個(gè)服務(wù)組,記為 ServiceSet,形成服務(wù)組集合,記為ServiceSetS,可以描述為式(1)。
其中,N為自然數(shù)。
根據(jù)假設(shè)1,同一個(gè)服務(wù)組中的服務(wù)具有相同或相似的業(yè)務(wù)功能,不同服務(wù)組中的服務(wù)具有不同的業(yè)務(wù)功能。每個(gè)服務(wù)組由一個(gè)抽象服務(wù)標(biāo)識(shí),描述為
其中,GroupID是服務(wù)組的唯一性標(biāo)識(shí);FuncSet是服務(wù)組ServiceSet內(nèi)云服務(wù)的業(yè)務(wù)功能描述,本文用三元組進(jìn)行描述,如式(3)。
其中,F(xiàn)unction是服務(wù)的業(yè)務(wù)功能描述;Input和Output分別是輸入和輸出接口描述。
定義 1 云服務(wù)指云服務(wù)資源池內(nèi)具有特定業(yè)務(wù)功能和非功能描述的具體服務(wù),本文用六元組對(duì)云服務(wù)進(jìn)行形式化描述,如式(4)。
其中,S表示云服務(wù);GroupID指服務(wù)S所屬的服務(wù)組編號(hào);ID是服務(wù)S在服務(wù)組GroupID中的編號(hào),GroupID與ID一起形成云服務(wù)S的唯一性標(biāo)識(shí);FuncSet是服務(wù)S的功能描述,定義同式(3);QoSSet是服務(wù)S的質(zhì)量描述,QoSSet是一個(gè)復(fù)合參數(shù),用參數(shù)向量表示 QoSSet=(QoS1, QoS2,QoS3, … ),一般包括服務(wù)的執(zhí)行時(shí)間、費(fèi)用和可靠性等指標(biāo),不同類(lèi)型服務(wù)需要的QoS指標(biāo)可能不同,隨應(yīng)用場(chǎng)景變化,服務(wù)的QoSSet參數(shù)值會(huì)發(fā)生變化;Provider指服務(wù)S的提供單位;Site指服務(wù)所在的物理位置。
對(duì)于云服務(wù)資源池內(nèi)的云服務(wù),提供模式一般分為 2種:1)單一服務(wù)提供,根據(jù)用戶需求,選擇資源池內(nèi)的一個(gè)服務(wù)提供給用戶;2)組合服務(wù)提供,根據(jù)用戶需求,選擇資源池內(nèi)的多個(gè)服務(wù)形成服務(wù)流程,提供給用戶,例如亞馬遜多個(gè)云服務(wù)的結(jié)合使用[16],如圖1所示。
圖1 亞馬遜多個(gè)云服務(wù)的結(jié)合使用
鑒于云服務(wù)提供商的云服務(wù)類(lèi)型有限,例如亞馬遜目前提供 11類(lèi)云服務(wù)[16],容易挖掘出潛在組合服務(wù)流程。可以依據(jù)歷史應(yīng)用信息和服務(wù)之間的業(yè)務(wù)關(guān)聯(lián)進(jìn)行服務(wù)流程挖掘。服務(wù)流程挖掘不是本文研究的重點(diǎn),這里不再詳細(xì)討論。在實(shí)例化之前,組合服務(wù)流程是一類(lèi)抽象服務(wù),本文用二元組對(duì)其進(jìn)行描述,如式(5)所示。
所有的云服務(wù)流程形成云服務(wù)流程集合,記為ServiceFlowS。
抽象云服務(wù)集合ServiceSetS和抽象云服務(wù)流程集合ServiceFlowS一起描述了服務(wù)資源池能夠提供的所有服務(wù)類(lèi)型。本文采用五元組對(duì)服務(wù)資源池進(jìn)行形式化描述,如式(6)。
其中,PoolID、PoolName和 PoolOwner分別描述服務(wù)資源池的唯一標(biāo)識(shí)、名稱和所屬企業(yè)等基本信息;ServiceSetS和ServiceFlowS的含義分別見(jiàn)式(1)和式(5)。
面向云服務(wù)提供商的服務(wù)選擇總體思路可以描述為:面對(duì)用戶的服務(wù)請(qǐng)求,首先分析用戶的服務(wù)需求,將其抽象為功能需求集合和非功能需求集合,作為服務(wù)選擇的依據(jù),這里的非功能需求用服務(wù)質(zhì)量(QoS)描述。然后根據(jù)功能需求集合依次在服務(wù)組集合ServiceSetS和服務(wù)流程集合ServiceFlowS中進(jìn)行功能匹配,找到滿足功能需求的服務(wù),形成抽象服務(wù)描述 ServiceSet或抽象服務(wù)流程描述ServiceFlow,每個(gè)抽象服務(wù)對(duì)應(yīng)多個(gè)功能相同或相似的具體服務(wù)S。進(jìn)而,綜合考慮用戶的QoS需求和服務(wù)資源調(diào)度,為每一個(gè)抽象服務(wù)選擇一個(gè)具體服務(wù)。最后形成服務(wù)選擇結(jié)果,提供給用戶。
基于上述思路,面向云服務(wù)提供商的服務(wù)選擇具體流程如圖2所示,具體描述如下。
步驟 1 根據(jù)給定的用戶需求,用戶需求包括對(duì)服務(wù)的功能需求描述和非功能需求描述,云服務(wù)選擇系統(tǒng)根據(jù)需求描述,將用戶需求抽象為用戶功能需求集合和非功能需求集合,分別用符號(hào)UserFuncSet和UserQoSSet描述。
步驟 2 服務(wù)選擇系統(tǒng)根據(jù) UserFuncSet中的參數(shù)需求,在服務(wù)資源池中查找功能匹配的服務(wù)組。匹配方法如下。
圖2 面向云服務(wù)提供商的服務(wù)選擇流程
步驟 2.1 進(jìn)行單一服務(wù)匹配,根據(jù)用戶需求UserFuncSet參數(shù)在服務(wù)組集合ServiceSetS中對(duì)抽象服務(wù)ServiceSet進(jìn)行匹配,查找FuncSet各參數(shù)均與用戶需求相應(yīng)參數(shù)匹配的服務(wù)組ServiceSet。
根據(jù)假設(shè)1,匹配結(jié)果有2種:0或1。若返回結(jié)果為 1,則表明服務(wù)資源池中存在滿足用戶功能需求的單一服務(wù),將該服務(wù)所在的服務(wù)組ServiceSet稱作候選服務(wù)集合,記為ServiceSetAim,轉(zhuǎn)步驟3;若返回結(jié)果為 0,則表明服務(wù)資源池中的任一服務(wù)均不能單獨(dú)實(shí)現(xiàn)用戶的功能需求,轉(zhuǎn)步驟2.2。
步驟 2.2 進(jìn)行服務(wù)流程匹配,根據(jù)用戶需求UserFuncSet參數(shù)在抽象云服務(wù)流程集合 Service FlowS中對(duì)ServiceFlow進(jìn)行匹配,查找FlowFuncSet各參數(shù)均與用戶需求相應(yīng)參數(shù)匹配的服務(wù)流程ServiceFlow。匹配結(jié)果有 3種情況:1)0;2)1;3)大于1。對(duì)于情況1),轉(zhuǎn)步驟6。對(duì)于情況2),將匹配的服務(wù)流程 ServiceFlow稱作目標(biāo)服務(wù)流程,記為ServiceFlowAim,轉(zhuǎn)步驟3。對(duì)于情況3),將匹配的多個(gè)服務(wù)流程 ServiceFlow稱作目標(biāo)服務(wù)流程集合,記為ServiceFlowAimS,轉(zhuǎn)步驟4。
步驟 3 對(duì)于步驟 2.1生成的候選服務(wù)集合ServiceSetAim,或者步驟 2.2生成的目標(biāo)服務(wù)流程ServiceFlowAim,分析用戶的 QoS需求參數(shù)UserQoSSet,采用基于QoS需求偏好和服務(wù)資源調(diào)度的服務(wù)選擇方法(見(jiàn)本文第 3節(jié)),進(jìn)行具體服務(wù)選擇。服務(wù)選擇結(jié)果有2種:成功或失敗。成功則輸出選擇結(jié)果,記為SelectedService,轉(zhuǎn)步驟5。失敗則轉(zhuǎn)步驟6。
步驟 4 對(duì)于步驟 2.2生成的目標(biāo)服務(wù)流程集合 ServiceFlowAimS,對(duì)其中的每一個(gè)元素ServiceFlow用基于QoS需求偏好和服務(wù)資源調(diào)度的服務(wù)選擇方法(見(jiàn)本文第3節(jié)),進(jìn)行服務(wù)選擇。同樣,服務(wù)選擇結(jié)果有2種:成功或失敗。對(duì)于成功服務(wù)流程ServiceFlow,進(jìn)行標(biāo)記和統(tǒng)計(jì),數(shù)量記為SFN。若SFN=0,轉(zhuǎn)步驟6;若SFN=1,則輸出服務(wù)選擇結(jié)果,轉(zhuǎn)步驟5;若SFN>1,說(shuō)明存在具體服務(wù)流程滿足用戶需求,則從促進(jìn)服務(wù)資源的均衡利用角度出發(fā),以最優(yōu)資源調(diào)度為原則,選擇其中一個(gè)具體服務(wù)流程,作為服務(wù)選擇結(jié)果,記為SelectedServiceFlow。轉(zhuǎn)步驟5。
步驟5 找到滿足用戶需求的服務(wù)資源,選擇的服務(wù)資源為SelectedService或者SelectedServiceFlow,服務(wù)選擇過(guò)程結(jié)束。
步驟6 沒(méi)有找到滿足用戶需求的服務(wù),服務(wù)選擇過(guò)程結(jié)束。
針對(duì)第2節(jié)服務(wù)選擇流程中步驟3和步驟4,本節(jié)給出一種基于 QoS需求偏好和服務(wù)資源調(diào)度的服務(wù)選擇方法。
為便于建立基于數(shù)學(xué)模型,首先給出表1所示符號(hào)定義。
基于 QoS需求偏好和服務(wù)資源調(diào)度的服務(wù)選擇模型的要素可以分為2類(lèi):QoS指標(biāo)和服務(wù)資源調(diào)度相關(guān)指標(biāo)。本節(jié)對(duì)這2類(lèi)指標(biāo)進(jìn)行分析,并給出各指標(biāo)的計(jì)算規(guī)則。
表1 基于QoS需求偏好和服務(wù)資源調(diào)度的服務(wù)選擇模型基本符號(hào)
3.2.1 QoS指標(biāo)
QoS指標(biāo)一般包括服務(wù)的執(zhí)行時(shí)間、費(fèi)用、可用性、可靠性和處理能力等。云服務(wù)分為3個(gè)層次SaaS、PaaS和IaaS,對(duì)于不同層次的服務(wù)。本文用向量Q=(Q1,Q2,Q3,…,Qk,…,QK)描述用戶對(duì)服務(wù)的QoS指標(biāo)需求,Q1描述用戶最關(guān)心的指標(biāo),Q2次之,以此類(lèi)推。服務(wù)的QoS參數(shù)值會(huì)出現(xiàn)在服務(wù)描述中。因此,各個(gè)服務(wù)的QoS指標(biāo)相關(guān)參數(shù)值可以從服務(wù)描述中獲取。
3.2.2 服務(wù)資源調(diào)度相關(guān)指標(biāo)
云服務(wù)資源調(diào)度是指基于調(diào)度規(guī)則對(duì)云服務(wù)資源池中的云服務(wù)進(jìn)行合理有效的調(diào)節(jié)和利用。本文主要考慮3種調(diào)度原則:資源集約利用原則、資源均衡利用原則和物理距離最短原則。本文第2.2節(jié)的服務(wù)選擇流程,基于功能的服務(wù)匹配結(jié)果有2種:?jiǎn)畏?wù)和服務(wù)流程。為簡(jiǎn)化描述計(jì)算過(guò)程,將第1種結(jié)果(單服務(wù))看作僅包含一個(gè)服務(wù)節(jié)點(diǎn)的服務(wù)流程。
1) 資源集約利用原則
該調(diào)度原則主要針對(duì)物理服務(wù)器的資源利用效率問(wèn)題。目前,服務(wù)器資源是云服務(wù)的一個(gè)主要內(nèi)容,一般通過(guò)虛擬化技術(shù)將物理服務(wù)器虛擬為多個(gè)獨(dú)立虛擬服務(wù)器(簡(jiǎn)稱為虛機(jī)),將虛機(jī)作為獨(dú)立的云服務(wù)器資源向用戶提供。為提高物理服務(wù)器資源的利用率,本文設(shè)計(jì)了資源集約利用原則,核心思想是優(yōu)先選擇處于開(kāi)啟狀態(tài)的物理服務(wù)器上的虛擬服務(wù)器資源。這一原則在服務(wù)選擇模型中將以資源集約利用函數(shù)F1體現(xiàn),F(xiàn)1是物理服務(wù)器開(kāi)啟狀態(tài)的函數(shù)。
F1計(jì)算思路為:判斷服務(wù)Si,j所在物理服務(wù)器狀態(tài)參數(shù)ServerStatusi,j,ServerStatusi,j=0表示處于開(kāi)啟狀態(tài);ServerStatusi,j=1表示處于關(guān)閉狀態(tài)。F1的具體計(jì)算規(guī)則可以描述為式(7)。
其中,Xi,j∈{0,1},i=1,2,3,…,I, j=1,2,3,…,Ji,當(dāng)服務(wù)Si,j是虛機(jī)資源時(shí),Xi,j=1;否則Xi,j=0。
2) 資源均衡利用原則
本文從2個(gè)方面考慮資源均衡利用原則:不飽和運(yùn)行狀態(tài)下的云服務(wù)資源均衡利用原則和飽和狀態(tài)下云服務(wù)資源均衡利用原則。
不飽和運(yùn)行狀態(tài)下的云服務(wù)資源均衡利用原則,主要針對(duì)虛機(jī)(一類(lèi)云服務(wù)資源)的選擇問(wèn)題進(jìn)行分析,對(duì)于已開(kāi)啟的物理服務(wù)器資源,如何均衡利用其上的虛機(jī)資源。也就是說(shuō),當(dāng)存在多個(gè)同類(lèi)虛機(jī)可供選擇,這些虛機(jī)均處于空閑狀態(tài)且所在物理服務(wù)器為開(kāi)啟狀態(tài)時(shí),怎樣選擇其中一個(gè)虛機(jī)需要遵循一定的原則。本文采用的實(shí)現(xiàn)規(guī)則是優(yōu)先選擇當(dāng)前負(fù)荷較小的物理服務(wù)器上的虛機(jī)資源。這一原則在服務(wù)選擇模型中將以函數(shù)F21體現(xiàn),F(xiàn)21是物理服務(wù)器的虛機(jī)利用率函數(shù)。F21的計(jì)算思路是:獲取候選服務(wù)Si,j所在物理服務(wù)器當(dāng)前時(shí)刻的虛機(jī)利用率ServerUtilizRatioi,j(已使用的虛機(jī)數(shù)/總虛機(jī)數(shù)),選擇利用率最小的物理服務(wù)器上的虛機(jī)資源。F21的具體計(jì)算規(guī)則可以描述為式(8)。
其中,Xi,j和ServerStatusi,j的含義同式(7)。
飽和狀態(tài)下云服務(wù)資源均衡利用原則,主要針對(duì)候選服務(wù)資源均處于忙碌狀態(tài)時(shí)的服務(wù)選擇問(wèn)題進(jìn)行分析。本文采用的實(shí)現(xiàn)規(guī)則是優(yōu)先選擇等待時(shí)間最短的服務(wù)資源。這一原則在服務(wù)選擇模型中將函數(shù)F22體現(xiàn),F(xiàn)22是服務(wù)資源的實(shí)際等待時(shí)間函數(shù)。
在給出F22的計(jì)算規(guī)則之前,首先分析各候選服務(wù)的等待時(shí)間計(jì)算方法。
不失一般性,對(duì)服務(wù)等待進(jìn)行假設(shè),如假設(shè)2。
假設(shè)2 對(duì)于服務(wù)Si,j,如果當(dāng)前運(yùn)行實(shí)例數(shù)pni,j等于最大并行實(shí)例數(shù)pNi,j,則新的實(shí)例請(qǐng)求需要排隊(duì)等待。
服務(wù)的運(yùn)行狀態(tài)包括:不飽和運(yùn)行狀態(tài)(運(yùn)行實(shí)例數(shù)小于pNi,j)、飽和運(yùn)行狀態(tài)(運(yùn)行實(shí)例數(shù)等于pNi,j)和排隊(duì)等待個(gè)數(shù),由系統(tǒng)動(dòng)態(tài)獲取。如果服務(wù)的運(yùn)行實(shí)例數(shù)小于pNi,j,則等待時(shí)間為零;若運(yùn)行實(shí)例數(shù)等于pNi,j,則根據(jù)服務(wù)的執(zhí)行時(shí)間和執(zhí)行進(jìn)度計(jì)算等待時(shí)間;若服務(wù)有排隊(duì),則根據(jù)其當(dāng)前執(zhí)行進(jìn)度、執(zhí)行時(shí)間、最大并行實(shí)例數(shù)pNi,j和排隊(duì)數(shù)量計(jì)算等待時(shí)間?;诖耍?wù)Si,j等待時(shí)間的計(jì)算規(guī)則可以描述為式(9)。
其中,int()表示取整函數(shù),這里采用上取整規(guī)則。其他各參數(shù)定義見(jiàn)表1。
對(duì)于一個(gè)組合服務(wù)流程,選擇具體服務(wù)之后,一般不會(huì)立刻使用所有服務(wù)。例如對(duì)于流程中任一服務(wù)(開(kāi)始服務(wù)節(jié)點(diǎn)除外),只有等前一個(gè)串聯(lián)服務(wù)執(zhí)行結(jié)束后,即任務(wù)到達(dá)后,才會(huì)調(diào)用其選擇的具體服務(wù)資源。也就是說(shuō),一方面服務(wù)資源被釋放后才可進(jìn)行實(shí)例化,另一方面任務(wù)到達(dá)后才會(huì)使用服務(wù)資源。因此,本文綜合考慮服務(wù)等待時(shí)間和任務(wù)到達(dá)時(shí)間,采用如下迭代計(jì)算過(guò)程計(jì)算流程中各個(gè)服務(wù)的實(shí)際等待時(shí)間:
其中,TotalTf()是服務(wù)流程總體時(shí)間類(lèi)參數(shù)的計(jì)算函數(shù),具體計(jì)算公式參見(jiàn)文獻(xiàn)[15],TotalTf(wtk′,j+tk,j,k=1,2,3,…,i-1)表 示 服 務(wù) 流 程 中 前i-1個(gè)服務(wù)的執(zhí)行時(shí)間與實(shí)際等待時(shí)間之和,也就是第i個(gè)服務(wù)Si,j的任務(wù)到達(dá)時(shí)間。
整個(gè)服務(wù)流程總的實(shí)際等待時(shí)間即為流程中每個(gè)服務(wù)的實(shí)際等待時(shí)間之和,F(xiàn)22的計(jì)算規(guī)則如式(14)。
其中,函數(shù)TotalTf()的含義與式(12)相同。
3) 物理距離最短原則
云中的服務(wù)資源分布在不同的物理位置。服務(wù)選擇中,優(yōu)先選擇距離用戶較近的服務(wù)資源。這一原則在服務(wù)選擇模型中將以函數(shù)F3體現(xiàn),F(xiàn)3是物理距離的函數(shù)。服務(wù)流程的物理距離包括2個(gè)方面,一方面是每個(gè)服務(wù)與用戶之間的物理距離,另一方面是兩兩服務(wù)之間的物理距離,這里主要考慮具有串聯(lián)關(guān)系的兩兩服務(wù)。本文基于這2種距離構(gòu)造函數(shù)F3。
從服務(wù)Si,j描述中提取地理位置參數(shù)Sitei,j,從用戶需求中獲取用戶的位置參數(shù),記為UserSite。F3的計(jì)算規(guī)則如式(15)。
其中,j =2,3,4,…,Ji;Distf( a, b)是距離函數(shù),用于計(jì)算a, b兩點(diǎn)之間的距離;Zi,j∈{0,1},Zi,j=1表示服務(wù)Si,j與Si+1,j之間是串聯(lián)關(guān)系,否則Zi,j=0。
3.2.3 總體指標(biāo)的計(jì)算規(guī)則
對(duì)于需要選擇組合服務(wù)流程的情況,需要計(jì)算組合服務(wù)的總體QoS指標(biāo)。在不同的流程實(shí)例中,需要根據(jù)局部流程的結(jié)構(gòu)特點(diǎn)來(lái)計(jì)算。流程的基本結(jié)構(gòu)主要有4種:順序、并行、選擇和循環(huán)。本文第2節(jié)描述的服務(wù)選擇流程,得到的服務(wù)組合流程將呈現(xiàn)上述4種或部分結(jié)構(gòu)。關(guān)于4種不同流程結(jié)構(gòu)下的總體指標(biāo)計(jì)算方法,相關(guān)文獻(xiàn)研究較多[8,15]。本文中,總體指標(biāo)的計(jì)算參見(jiàn)文獻(xiàn)[15]的計(jì)算方法。
由于不同的指標(biāo)具有不同的量綱,因此在將多個(gè)指標(biāo)進(jìn)行綜合計(jì)算時(shí),首先需要對(duì)各種指標(biāo)進(jìn)行無(wú)量綱歸一化處理。本文采用極差規(guī)格化變換[17,18]對(duì)每一指標(biāo)值進(jìn)行無(wú)量綱歸一化處理。無(wú)量綱歸一化處理后,服務(wù)個(gè)體每一質(zhì)量指標(biāo)的取值都是[0, 1]區(qū)間上的無(wú)量綱點(diǎn)。本文所建模型中的參數(shù)均為歸一化處理后的參數(shù)。
基于QoS指標(biāo)和服務(wù)的運(yùn)行狀態(tài)建立基于用戶QoS需求偏好和服務(wù)資源調(diào)度的服務(wù)選擇數(shù)學(xué)模型?;赒oS指標(biāo)的服務(wù)選擇是一個(gè)多目標(biāo)數(shù)學(xué)規(guī)劃問(wèn)題,鑒于目標(biāo)規(guī)劃能較好的解決多目標(biāo)決策問(wèn)題,其目標(biāo)函數(shù)不是尋求最大值或最小值,而是尋求這些目標(biāo)與預(yù)計(jì)成果的最小差距,差距越小,目標(biāo)實(shí)現(xiàn)的可能性越大。利用目標(biāo)規(guī)劃的這一特點(diǎn),服務(wù)選擇并不是以選擇最優(yōu)的服務(wù)為目標(biāo),而是找到滿足用戶需求的服務(wù),在一定程度上可以避免優(yōu)質(zhì)服務(wù)排隊(duì)現(xiàn)象,利于服務(wù)的均勻利用。
本文采用目標(biāo)規(guī)劃對(duì)基于QoS需求偏好和服務(wù)資源調(diào)度的服務(wù)選擇問(wèn)題進(jìn)行建模。用戶的QoS指標(biāo)一般包括服務(wù)的執(zhí)行時(shí)間、費(fèi)用、可用性、可靠性和處理能力等。將所選服務(wù)或組合服務(wù)流程的實(shí)際QoS指標(biāo)值與用戶期望值的差值作為模型的目標(biāo)項(xiàng),差值越小表示越接近用戶需求,當(dāng)差值為0時(shí),表示所選服務(wù)或組合服務(wù)流程完全滿足用戶需求。基于用戶的QoS指標(biāo)需求和服務(wù)的使用狀態(tài),目標(biāo)規(guī)劃的目標(biāo)向量可以定義為:
目標(biāo)向量是一個(gè)由多個(gè)目標(biāo)項(xiàng)構(gòu)成的一維向量,描述為式(16)。
其中,Objo表示目標(biāo)因子,o=1,2,3,…,O,O是自然數(shù),Objo≥0。
在一次服務(wù)選擇中,用戶對(duì)于不同指標(biāo)的偏好程度可能不同,例如:用戶需求“在滿足服務(wù)執(zhí)行時(shí)間的條件下費(fèi)用越低越好”,表明“執(zhí)行時(shí)間”的優(yōu)先等級(jí)高于“執(zhí)行費(fèi)用”。針對(duì)這一情況,提供一種靈活的目標(biāo)項(xiàng)權(quán)重設(shè)置方法。該方法通過(guò)采用權(quán)重向量實(shí)現(xiàn),目標(biāo)權(quán)重向量定義如下:
目標(biāo)權(quán)重向量是一個(gè)由多個(gè)權(quán)重因子構(gòu)成的一維向量,描述為
其中,αw表示權(quán)重因子,w=1,2,3,…,W,W是自然數(shù);0≤αw≤1且
對(duì)于目標(biāo)規(guī)劃問(wèn)題,將目標(biāo)權(quán)重向量與目標(biāo)向量的點(diǎn)乘乘積函數(shù)作為目標(biāo)規(guī)劃模型的目標(biāo)函數(shù),對(duì)于同一個(gè)目標(biāo)函數(shù),權(quán)重?cái)?shù)量W與目標(biāo)數(shù)量O相等,目標(biāo)函數(shù)可以描述為
本文模型考慮4個(gè)等級(jí)的目標(biāo),前3個(gè)目標(biāo)分別根據(jù)用戶的QoS需求生成,QoS指標(biāo)需求一般可以分為2類(lèi),一類(lèi)指標(biāo)值越大越好,例如可用性、可靠性和處理能力等,在模型中用符號(hào),k=1,2,3表示,另一類(lèi)指標(biāo)值越小越好,例如服務(wù)的執(zhí)行時(shí)間和費(fèi)用等,在模型中用符號(hào),k=1,2,3表示;第4個(gè)目標(biāo)是服務(wù)資源調(diào)度函數(shù),根據(jù)這4個(gè)目標(biāo),形成目標(biāo)向量Obj=(V0,V0,V0,P1×F1 V 0+P21×F21V 0+P22×F22V 0+P3×F3 V 0),其中4個(gè)目標(biāo)因子分別表示所選服務(wù)或組合服務(wù)流程的實(shí)際QoS指標(biāo)值與用戶期望值的差。根據(jù)用戶需求偏好決定目標(biāo)權(quán)重向量ObjWeight?;谀繕?biāo)向量和權(quán)重向量,構(gòu)造目標(biāo)函數(shù)。模型的約束函數(shù)主要是目標(biāo)約束和決策變量約束。
基于上述分析,建立基于QoS需求偏好和服務(wù)資源調(diào)度的服務(wù)選擇數(shù)學(xué)模型,模型描述如式(19)~式(22)。
其中,I=1表示單服務(wù)選擇,I>1表示組合服務(wù)流程選擇。式(18)為目標(biāo)函數(shù),表示服務(wù)或組合服務(wù)的3個(gè)QoS指標(biāo)分別與用戶期望值的差,依字典序分別達(dá)到最小,目標(biāo)函數(shù)中的V表示“取大”操作,例如“V0”表示“”的值與“0”取大。式(20)、式(21)為模型的目標(biāo)約束,表示3個(gè)QoS指標(biāo)分別與用戶期望值的差。式(22)是決策變量約束,表示為每個(gè)抽象服務(wù)選擇一個(gè)具體服務(wù),各參數(shù)的總體指標(biāo)是Yi,j的函數(shù)。
組合服務(wù)QoS局部和全局優(yōu)化計(jì)算問(wèn)題都是NP問(wèn)題,算法具有指數(shù)復(fù)雜度,隨著問(wèn)題規(guī)模的增大,難以在多項(xiàng)式時(shí)間內(nèi)找到問(wèn)題的最優(yōu)解[8,19]。遺傳算法(GA, genetic algorithm)作為一種智能優(yōu)化方法,具有并行計(jì)算、群體尋優(yōu)的特點(diǎn),已廣泛應(yīng)用于各種NP-Complete 問(wèn)題的求解[8]。鑒于此,本文基于遺傳算法對(duì)所提服務(wù)選擇方法進(jìn)行仿真計(jì)算。
算法的基本思想為:基于第2節(jié)服務(wù)選擇流程步驟2,在服務(wù)資源池中找到目標(biāo)服務(wù)組,形成組合服務(wù)流程(可以包含一個(gè)或多個(gè)服務(wù)節(jié)點(diǎn))。將每一個(gè)配置后的組合服務(wù)流程編碼為一個(gè)染色體,通過(guò)染色體之間的選擇、交叉和變異等遺傳操作,產(chǎn)生具有更高適應(yīng)函數(shù)值的新染色體。這一過(guò)程不斷重復(fù)進(jìn)行,實(shí)現(xiàn)在解空間的并行全局搜索。算法停止時(shí),得到一個(gè)染色體集合,對(duì)應(yīng)模型的解集,也就是服務(wù)選擇的方案集。
在遺傳算法中,適應(yīng)值是對(duì)染色體進(jìn)行評(píng)價(jià)的重要指標(biāo),適應(yīng)值函數(shù)的構(gòu)造非常重要。染色體對(duì)應(yīng)問(wèn)題的解,因此可以基于所求解問(wèn)題的目標(biāo)對(duì)染色體的適應(yīng)值函數(shù)進(jìn)行定義。
1) 適應(yīng)值函數(shù)構(gòu)建
根據(jù)模型的目標(biāo)函數(shù)構(gòu)建遺傳算法的適應(yīng)值函數(shù) f′。
用戶對(duì)不同 QoS指標(biāo)的需求偏好通過(guò)αk(k = 1 ,2,3)的取值來(lái)體現(xiàn)。
2) 適應(yīng)值歸一化處理
直觀認(rèn)識(shí)方面,適應(yīng)值越高表示染色體性能越好,反之越差。因此便于直觀理解,對(duì)適應(yīng)值f′采用負(fù)指數(shù)方法進(jìn)行歸一化處理[15],可以描述為
其中,μ>0,是歸一化參數(shù)。
歸一化之后的適應(yīng)值f是介于0和1之間的實(shí)數(shù),f=1表示適應(yīng)值最高,f=0表示適應(yīng)值最低。
本文基于云服務(wù)提供商的服務(wù)選擇方法,服務(wù)選擇結(jié)果可以是一個(gè)服務(wù),也可以是由多個(gè)服務(wù)形成的組合服務(wù)流程。對(duì)于選擇結(jié)果是一個(gè)服務(wù)的情況,本節(jié)算例分析中把其看作包含一個(gè)服務(wù)節(jié)點(diǎn)的服務(wù)流程,對(duì)本文第3.3節(jié)所建模型進(jìn)行算例分析。服務(wù)流程包含I個(gè)服務(wù)節(jié)點(diǎn),這里令I(lǐng)=6,不失一般性,假設(shè) I個(gè)服務(wù)組的規(guī)模相同且規(guī)模Ji= 2 0,i = 1 ,2,3,…, I 。
1) 服務(wù)資源池中服務(wù)的 QoS參數(shù)和資源調(diào)度相關(guān)參數(shù)
服務(wù)Si,j的相關(guān)參數(shù)值從服務(wù)描述中獲取,例如:對(duì)于云計(jì)算IaaS層面的某存儲(chǔ)服務(wù)Si,j,根據(jù)式(4)的云服務(wù)定義,有i=GroupID,j=ID且FuncSet和 QoSSet分別描述該服務(wù)的功能和質(zhì)量指標(biāo),Provider和Site分別描述該服務(wù)的提供者信息和所處的物理位置信息。
這里QoS指標(biāo)分別取服務(wù)執(zhí)行費(fèi)用、時(shí)間和可靠性。對(duì)于QoS指標(biāo)參數(shù)和服務(wù)服務(wù)資源調(diào)度相關(guān)參數(shù)初始化,采用隨機(jī)方法,在一定范圍內(nèi)自動(dòng)生成,每個(gè)參數(shù)的取值范圍設(shè)定如表2和表3所示,其中, j =1,2,3,… ,Ji, i = 1,2,3,… , I 。
表2 QoS參數(shù)相關(guān)參數(shù)取值范圍
表3 服務(wù)資源調(diào)度相關(guān)參數(shù)取值范圍
其中,參數(shù) q ueuei,j和pNi,j的取值是整數(shù),參數(shù)queuei,j和pNi,j初始化方法分別是:在區(qū)間(0,60]和[1,20]上分別隨機(jī)產(chǎn)生一個(gè)實(shí)數(shù),然后取整分別作為參數(shù) q ueuei,j和pNi,j的值;參數(shù)pni,j初始化方法是在區(qū)間[0,pNi,j]上隨機(jī)產(chǎn)生一個(gè)實(shí)數(shù),然后取整作為該參數(shù)的值。
2) 用戶需求相關(guān)參數(shù)設(shè)置
不同的用戶需求一般體現(xiàn)在對(duì)各項(xiàng)指標(biāo)的限值要求不同,本節(jié)實(shí)驗(yàn)假設(shè)了3種不同的用戶需求情況,如表4所示。
表4 用戶需求相關(guān)參數(shù)設(shè)置
3) 目標(biāo)權(quán)重參數(shù)
本文目標(biāo)規(guī)劃模型考慮了4個(gè)目標(biāo),對(duì)應(yīng)的目標(biāo)權(quán)重向量包含4個(gè)權(quán)重因子。為比較不同用戶需求偏好情況下的服務(wù)選擇結(jié)果,本算例對(duì)4種不同的目標(biāo)權(quán)重向量取值下的服務(wù)選擇進(jìn)行計(jì)算分析,目標(biāo)權(quán)重向量參數(shù)設(shè)置如表5所示。
表5 目標(biāo)權(quán)重參數(shù)設(shè)置
其中,ObjWeightA的4個(gè)權(quán)重取值相同,表示4個(gè)目標(biāo)優(yōu)先等級(jí)相同;ObjWeightB和ObjWeightC的權(quán)重設(shè)置表示3個(gè)QoS指標(biāo)具有從高到低不同的優(yōu)先等級(jí),未考慮資源調(diào)度問(wèn)題;ObjWeightD的權(quán)重設(shè)置表示只考慮資源調(diào)度目標(biāo)而不考慮用戶的QoS需求。
4) 遺傳算法參數(shù)
遺傳算法參數(shù)取交叉概率設(shè)為 0.6,變異概率設(shè)為0.1,染色體種群規(guī)模取25。
用VC++6.0編程實(shí)現(xiàn)求解算法。分別針對(duì)3種不同的用戶QoS需求和4種不同的目標(biāo)權(quán)重情況進(jìn)行具體服務(wù)選擇。通過(guò)設(shè)置不同的目標(biāo)權(quán)重,決定在服務(wù)選擇模型中是否引入資源調(diào)度規(guī)則,其中,ObjWeightA和ObjWeightD權(quán)重設(shè)置下,在不同程度上考慮資源調(diào)度原則,ObjWeightA和ObjWeightD權(quán)重設(shè)置下,不考慮資源調(diào)度原則。服務(wù)選擇結(jié)果如表6和表7所示。
表6 不同用戶需求情況下的服務(wù)選擇方案(ObjWeightA)
表7 不同目標(biāo)權(quán)重參數(shù)情況下的服務(wù)選擇方案(Case2)
表6表明,3種不同QoS需求情況下,前2種不同的用戶需求情況下,模型的適應(yīng)值都等于 1,意味著用戶的需求都達(dá)到滿意,但并一定是系統(tǒng)內(nèi)服務(wù)選擇的最優(yōu)解或者最優(yōu)方案。因此本文所提服務(wù)選擇方法一方面能夠滿足用戶的需求,另一方面在一定程度上能夠減少優(yōu)質(zhì)服務(wù)排長(zhǎng)隊(duì)的問(wèn)題。對(duì)于用戶需求 Case3,算法運(yùn)行結(jié)束時(shí)沒(méi)有找到適應(yīng)值等于1的服務(wù)流程,即完全滿足需求的服務(wù)組合方案,這種情況下可以進(jìn)而采用其他方法與用戶達(dá)成協(xié)定,例如服務(wù)協(xié)商。
表7表明,4種不同的目標(biāo)權(quán)重參數(shù)下,都找到了滿足需求的具體服務(wù)選擇方案,而每種情況下的服務(wù)選擇方案不盡相同。目標(biāo)權(quán)重反映了用戶對(duì)服務(wù)的QoS需求偏好和資源調(diào)度目標(biāo),表6的數(shù)據(jù)反映出不同的目標(biāo)權(quán)重設(shè)置導(dǎo)致了不同的服務(wù)選擇結(jié)果。其中,對(duì)于目標(biāo)權(quán)重 ObjWeightB和ObjWeightC,參數(shù)設(shè)置為(0.75, 0.2, 0.05, 0)和(0.5,0.5, 0, 0),α4=0表示服務(wù)選擇計(jì)算過(guò)程中沒(méi)有考慮資源調(diào)度因素,這種情況下的服務(wù)選擇結(jié)果明顯區(qū)別于其他2組,同時(shí),由于ObjWeightB和ObjWeightC具有不同 QoS權(quán)重,對(duì)應(yīng)的服務(wù)選擇結(jié)果也不相同。因此,將用戶需求偏好和資源調(diào)度因素考慮到服務(wù)選擇過(guò)程具有重要意義。
服務(wù)選擇是云服務(wù)提供商進(jìn)行服務(wù)提供時(shí)面臨的一個(gè)首要問(wèn)題。本文從云服務(wù)提供商角度,分析影響服務(wù)選擇的主要因素,梳理服務(wù)選擇流程,給出服務(wù)選擇的具體實(shí)現(xiàn)步驟。進(jìn)而建立基于用戶需求偏好和服務(wù)資源調(diào)度的服務(wù)選擇數(shù)學(xué)模型,設(shè)計(jì)智能算法進(jìn)行求解。算例分析表明了方法的可行性和有效性。本文所提服務(wù)選擇流程和模型對(duì)于提高云服務(wù)提供商的服務(wù)運(yùn)營(yíng)效率具有一定指導(dǎo)意義。
[1] 鄧岳. 基于個(gè)性化服務(wù)匹配度的服務(wù)發(fā)現(xiàn)機(jī)制研究[D]. 西安:西安電子科技大學(xué)2007.DENG Y. Research on Service Discovery Based on Personalized Service Matchmaking Degree[D]. Xi’an: Xidian University, 2007.
[2] YANG F C, SU S, LI Z. Hybrid QoS-aware semantic Web service composition strategies[J]. Science in China Series F: Information Sciences, Science in China Press, Co-published with Springer-Verlag GmbH, 2008, 51(11): 1822-1840.
[3] 白東偉. 基于語(yǔ)義的 Web服務(wù)匹配與發(fā)現(xiàn)技術(shù)研究[D]. 北京: 北京郵電大學(xué), 2008.BAI D W. Research on Web Services Semantic Matchmaking and Discovery[D]. Beijing: Beijing University of Posts and Telecommunications, 2008.
[4] 狄小峰. 基于分布式本體的服務(wù)選擇技術(shù)研究[D]. 北京: 清華大學(xué), 2012.DI X F. Research on Service Selection Method based on Distributed Ontology[D]. Beijing: Tsinghua University, 2012.
[5] MENASCE D A. QoS issues in web services[J]. IEEE Internet Computing, 2002, 6: 72-75.
[6] RAN S. A model for web services discovery with QoS[J]. ACM, 2003,4(1): 1-10.
[7] YU T, LIN K J. The design of QoS broker algorithms for QoS-capable web services[J]. International Journal of Web Service Research,2004,1(4): 33-50.
[8] 劉書(shū)雷, 劉云翔, 張帆等. 一種服務(wù)聚合中 QoS 全局最優(yōu)服務(wù)動(dòng)態(tài)選擇算法[J]. 軟件學(xué)報(bào), 2007. 18(3): 646-656.LIU S L, LIU Y X, ZHANG F, et al. A dynamic Web services selection algorithm with QoS global optimal in Web services composition[J]. Journal of Software, 2007, 18 (3): 646-656.
[9] FUDZEE M F M, ABAWAJY J H. QoS-based adaptation service selection broker[J]. Future Generation Computer Systems, 2011, 27:256-264.
[10] GUO F, ZHAO L, WANG Y, et al. Research on the Web services selection problem[A]. Proceedings of the 2010 Second International Workshop on Education Technology and Computer Science(ETCS)[C]. Wuhan, China, 2010. 284 - 287.
[11] 潘靜, 徐鋒, 呂建. 面向可信服務(wù)選取的基于聲譽(yù)的推薦者發(fā)現(xiàn)方法[J]. 軟件學(xué)報(bào), 2010, 21(2): 388-400.PAN J, XU F, LV J. Reputation-based recommender discovery approach for service selection[J]. Journal of Software, 2010, 21(2):388-400.
[12] DAI G, WANG Y. Trust-aware component service selection algorithm in service composition[A]. 2009 International Conference on Frontier of Computer Science and Technology[C]. 2009.613-618.
[13] 徐萌. 基于服務(wù)關(guān)系的服務(wù)組合相關(guān)技術(shù)研究[D].北京:北京郵電大學(xué), 2007.XU M. Research on Service Relationship based Web Services Composition and Related Technology[D]. Beijing: Beijing University of Posts and Telecommunications, 2007.
[14] 葉世陽(yáng), 魏峻, 李磊等. 支持服務(wù)關(guān)聯(lián)的組合服務(wù)選擇方法研究[J].計(jì)算機(jī)學(xué)報(bào). 2008, 31(8): 1383-1397.YE S Y, WEI J, LI L, et al. Service correlation aware service selection for composite service[J]. Chinese Journal of Computers, 2008, 31(8):1383-1397.
[15] 李素粉. SOBE環(huán)境下支持信任和服務(wù)關(guān)聯(lián)的服務(wù)選擇方法[D]. 北京: 清華大學(xué), 2011.LI S F. A Trust and Service Relation Aware Approach to Services Selection under SOBE Environments[D]. Beijing: Tsinghua University,2010.
[16] [EB/OL]. http://aws.amazon.com.
[17] 張躍, 鄒壽平, 宿分. 模糊數(shù)學(xué)方法及其應(yīng)用[M]. 北京: 煤炭工業(yè)出版社, 1992.ZHANG Y, ZOU S P, SU F. Fuzzy Mathematics and its Application[M]. Beijing: Ching Coal Industry Publishing House, 1992.
[18] 姜峰.基于關(guān)系的服務(wù)資源管理關(guān)鍵技術(shù)研究[D]. 北京: 清華大學(xué),2009.JIANG F. Research on Key Technologies of Relation-Based Service Resource Management[D]. Beijing: Tsinghua University, 2009.
[19] GAREY M, JOHNSON D. Computers and Intractability: A Guide to the Theory of NP-Completeness[M]. New York: W.H.Freeman and Company, 1979.