国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于服務(wù)工作流的服務(wù)動(dòng)態(tài)預(yù)取模型

2014-08-10 07:33:54李海波
關(guān)鍵詞:調(diào)用日志閾值

李海波

(華僑大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,福建 廈門 361021)

0 引言

為滿足企業(yè)間的頻繁交互以及業(yè)務(wù)環(huán)境和需求的動(dòng)態(tài)變化,企業(yè)應(yīng)用軟件的構(gòu)造和升級(jí)也逐步開(kāi)始面向服務(wù)計(jì)算技術(shù),并經(jīng)常通過(guò)Web服務(wù)組合實(shí)現(xiàn)更為復(fù)雜的業(yè)務(wù)邏輯。服務(wù)組合方式有很多種,其中,依據(jù)服務(wù)間內(nèi)在的邏輯關(guān)系,把一系列基本服務(wù)按照一定的時(shí)序組裝在一起,實(shí)現(xiàn)復(fù)雜的交互,即為服務(wù)工作流[1]。服務(wù)的優(yōu)劣通常采用服務(wù)質(zhì)量(Quality of Service,QoS)衡量,為提高服務(wù)工作流環(huán)境中服務(wù)間的時(shí)序組合效率,服務(wù)工作流選取質(zhì)量“最好”的服務(wù)來(lái)組合。但當(dāng)前QoS的度量指標(biāo)描述的基本都是軟件技術(shù)特性,在候選服務(wù)少的情況下,基于QoS的方法基本無(wú)法起到改善系統(tǒng)效率的作用[2],必須尋找其他度量手段。

在服務(wù)工作流環(huán)境下,當(dāng)服務(wù)節(jié)點(diǎn)業(yè)務(wù)量大時(shí),大量的Web服務(wù)被不斷地組合在一起,裝入內(nèi)存、執(zhí)行、銷毀、再裝入內(nèi)存。將Web服務(wù)裝入內(nèi)存通常稱作Web服務(wù)的實(shí)例化。提高Web服務(wù)實(shí)例化的速度可以極大地縮短服務(wù)時(shí)序組合的響應(yīng)時(shí)間。目前,縮短服務(wù)響應(yīng)時(shí)間的方法包括基于體系結(jié)構(gòu)的方法和預(yù)取方法兩大類,前者通常采用專門的中間層緩沖一些常用服務(wù)[3-4],如 FastSOA[5],在服務(wù)再次收到同樣的請(qǐng)求時(shí)重新使用緩沖的響應(yīng),以此減少對(duì)冗余請(qǐng)求響應(yīng)造成的服務(wù)帶寬,同時(shí)降低服務(wù)請(qǐng)求響應(yīng)時(shí)間,但隨著企業(yè)Web服務(wù)的激增,緩沖帶來(lái)的性能改善不再顯著[6];預(yù)取是根據(jù)訪問(wèn)歷史預(yù)測(cè)用戶的未來(lái)訪問(wèn)請(qǐng)求,并把預(yù)測(cè)對(duì)象預(yù)先存放在緩沖區(qū)中,當(dāng)該對(duì)象被再次請(qǐng)求時(shí),直接從緩存中提取該對(duì)象給用戶,以此降低用戶的訪問(wèn)延遲[7]。如果預(yù)測(cè)的足夠準(zhǔn)確,則采用預(yù)取技術(shù)實(shí)例化Web服務(wù)可明顯提高服務(wù)工作流的整體效率。在服務(wù)工作流的動(dòng)態(tài)環(huán)境下,服務(wù)的執(zhí)行頻率隨業(yè)務(wù)的發(fā)展時(shí)刻變化,這是服務(wù)預(yù)取要考慮的主要因素。

為此,本文針對(duì)服務(wù)工作流環(huán)境,基于業(yè)務(wù)因素,提出一種Web服務(wù)的動(dòng)態(tài)預(yù)取模型。首先分析業(yè)務(wù)頻率對(duì)Web服務(wù)預(yù)取的影響,體現(xiàn)在服務(wù)調(diào)用的間隔以及被反復(fù)調(diào)用的程度上,通過(guò)服務(wù)間的相對(duì)依賴強(qiáng)度和絕對(duì)依賴強(qiáng)度兩個(gè)計(jì)算模型得以體現(xiàn),并最終獲取服務(wù)預(yù)取集合,通過(guò)實(shí)驗(yàn)及對(duì)比分析驗(yàn)證方法的有效性。

1 相關(guān)工作

廣義地講,可預(yù)取的服務(wù)包括 Web頁(yè)面、位置服務(wù)中的數(shù)據(jù)、流媒體、軟構(gòu)件等,服務(wù)的形態(tài)不同,預(yù)取方法也不同?;诼窂筋A(yù)測(cè)的方法通過(guò)挖掘用戶訪問(wèn)的路徑獲得預(yù)取集[7-8];文獻(xiàn)[9]提出基于場(chǎng)景的數(shù)據(jù)預(yù)取方法,根據(jù)用戶和終端上保存的訪問(wèn)歷史記錄的關(guān)系,當(dāng)用戶訪問(wèn)某場(chǎng)景時(shí),客戶端可以從服務(wù)器預(yù)取下一個(gè)可能的場(chǎng)景;基于位置的服務(wù)系統(tǒng)中,受帶寬和數(shù)據(jù)量的影響,通常需要預(yù)取數(shù)據(jù)資源,包括基于圖的增量預(yù)取策略[10]、基于語(yǔ)義的預(yù)取方法[11]、用于捕捉移動(dòng)的物體的局部匹配方法[12]等;流媒體的預(yù)取則根據(jù)媒體服務(wù)的特征,多采取分段緩存的策略[13-14]。上述方法基本都是根據(jù)用戶的訪問(wèn)歷史數(shù)據(jù),針對(duì)提供服務(wù)的不同對(duì)象的特點(diǎn),給出相應(yīng)的預(yù)取方法。由于事先無(wú)流程引導(dǎo)信息,這些方法預(yù)測(cè)的準(zhǔn)確性取決于用戶的訪問(wèn)偏好和操作的熟練程度。

軟構(gòu)件作為可執(zhí)行單元,通過(guò)構(gòu)件庫(kù)為軟件系統(tǒng)提供執(zhí)行服務(wù),可通過(guò)挖掘業(yè)務(wù)頻率獲得構(gòu)件的預(yù)取集[15]。鑒于應(yīng)用領(lǐng)域的特點(diǎn),該方法可提供工作流模型作為預(yù)取的引導(dǎo)信息,預(yù)取結(jié)果較其他方法更準(zhǔn)確。

2 服務(wù)預(yù)取因素分析

首先,從工作流模型的角度分析。服務(wù)工作流模型是對(duì)組織結(jié)構(gòu)業(yè)務(wù)過(guò)程的抽象表示,是對(duì)一系列活動(dòng)的邏輯順序的規(guī)定,如圖1所示為跨企業(yè)環(huán)境下的訂單處理流程。由于服務(wù)工作流中的活動(dòng)都是由Web服務(wù)組合而成的,活動(dòng)間的時(shí)序關(guān)系也決定了所包含服務(wù)的時(shí)序關(guān)系。例如,根據(jù)圖2所示的服務(wù)組合以及圖3所示的一個(gè)工作流實(shí)例,A1包含組合服務(wù){S1,S2},A2包含組合服務(wù){S2,S3,S4,S5,S6},活動(dòng)A1先于活動(dòng)A2執(zhí)行,則{S1,S2}就先于{S2,S3,S4,S5,S6}執(zhí)行。如果兩個(gè)服務(wù)直接相鄰,則互為直接前驅(qū)和后繼關(guān)系,如S1是S3的直接前驅(qū),如果不直接相鄰,則互為間接前驅(qū)和后繼關(guān)系,如S1是活動(dòng)A3中的S7的間接前驅(qū)?;殚g接前驅(qū)和后繼關(guān)系的服務(wù)之間的“距離”較遠(yuǎn)。此外,服務(wù)可以在不同活動(dòng)中被反復(fù)調(diào)用,如S2;兩個(gè)服務(wù)間的前驅(qū)和后繼關(guān)系也是相對(duì)的,如S2和S7被反復(fù)執(zhí)行的次數(shù)較多。

其次,從工作流運(yùn)行階段的角度,由于服務(wù)工作流模型描述的是業(yè)務(wù)發(fā)生的所有可能性,運(yùn)行階段會(huì)根據(jù)當(dāng)前業(yè)務(wù)的發(fā)生情況選擇執(zhí)行路徑,最終導(dǎo)致服務(wù)調(diào)用頻率的不均衡,這也是由工作流模型中循環(huán)結(jié)構(gòu)和選擇結(jié)構(gòu)的特點(diǎn)決定的[16]。在同一段時(shí)間內(nèi),不同活動(dòng)執(zhí)行的頻率不同,且同一活動(dòng)的執(zhí)行頻率在不同時(shí)期也不是固定的,業(yè)務(wù)頻率的變化趨勢(shì)可通過(guò)工作流日志得到如實(shí)反映。例如,當(dāng)客戶下訂單后,若此類產(chǎn)品處于銷售淡季,則服務(wù)工作流按圖3執(zhí)行,服務(wù)S11,S12,S13和S14的執(zhí)行頻率將會(huì)變低;若處于銷售旺季,則銷售商經(jīng)常會(huì)庫(kù)存不夠,就會(huì)通過(guò)與制造商的協(xié)作采購(gòu)產(chǎn)品,此時(shí)服務(wù)S11,S12,S13和S14的執(zhí)行頻率就會(huì)變高。因此,為了更準(zhǔn)確地預(yù)取服務(wù),服務(wù)預(yù)取模型中要體現(xiàn)業(yè)務(wù)頻率的持續(xù)變化。

最后,雖然Web服務(wù)技術(shù)已經(jīng)成熟,但其體系結(jié)構(gòu)仍存在性能上的局限。作為一種分布式計(jì)算模式,基于可擴(kuò)展標(biāo)記語(yǔ)言(eXtensible Markup Language,XML)的標(biāo)準(zhǔn)協(xié)議,Web服務(wù)的調(diào)用涉及到簡(jiǎn)單對(duì)象訪問(wèn)協(xié)議(Simple Object Access Protocol,SOAP)報(bào)文的解析、驗(yàn)證、編碼等步驟,再考慮服務(wù)傳輸,這些延遲對(duì)性能的影響也不容忽視。

綜上分析,服務(wù)被反復(fù)執(zhí)行的程度、服務(wù)間出現(xiàn)的間隔、整個(gè)業(yè)務(wù)的發(fā)生頻率都是預(yù)取服務(wù)的決定因素,都可以通過(guò)挖掘工作流日志得到如實(shí)反映。

3 基于服務(wù)工作流日志的業(yè)務(wù)頻率識(shí)別方法

業(yè)務(wù)頻率是指一段時(shí)間內(nèi)某項(xiàng)業(yè)務(wù)發(fā)生的頻率。在服務(wù)工作流運(yùn)行時(shí),活動(dòng)都是由服務(wù)組合而成,則每個(gè)活動(dòng)的執(zhí)行頻率就是其組合服務(wù)的執(zhí)行頻率[16]。下面首先定義服務(wù)工作流日志。

定義1 服務(wù)工作流日志W(wǎng)L[16]。設(shè)A為所有工作流實(shí)例中出現(xiàn)的活動(dòng)集合,A*是A范圍內(nèi)所有工作流實(shí)例的集合,則服務(wù)工作流日志W(wǎng)L?A*,是A上工作流實(shí)例的子集。

服務(wù)工作流日志的定義強(qiáng)調(diào):①有效性,即使活動(dòng)已定義在工作流模型中,但如果一直未執(zhí)行,也不屬于工作流日志的范圍;②時(shí)效性,即只考慮某段時(shí)期內(nèi)的工作流日志,一般根據(jù)最近的日志分析業(yè)務(wù)發(fā)展的最新情況。

工作流實(shí)例是活動(dòng)的執(zhí)行序列,包括工作流實(shí)例號(hào)(case_id)、活動(dòng)開(kāi)始時(shí)間(begin-time)和活動(dòng)結(jié)束時(shí)間(end_time)等信息,如表1所示的服務(wù)工作流日志片段來(lái)自于圖1所示的服務(wù)工作流。

表1 服務(wù)工作流日志片段

續(xù)表1

設(shè)WL 中工作流實(shí)例的集合I={I1,I2,I3,…,In},共包含m 種業(yè)務(wù)活動(dòng),表示成 A={a1,a2,a3,…,am},相應(yīng)地,m 種活動(dòng)的執(zhí)行次數(shù)Freq={f1,f2,f3,…,fm}。設(shè)actj=Ins(ai)表示 WL 中的活動(dòng)actj是工作流模型中活動(dòng)ai的實(shí)例,在日志W(wǎng)L中共有M個(gè)活動(dòng)實(shí)例。下面是Freq的求解算法。

算法1 WL_Freq——計(jì)算WL中每種業(yè)務(wù)活動(dòng)被執(zhí)行的次數(shù)。

輸入:某段時(shí)間內(nèi)工作流日志W(wǎng)L;

輸出:每種業(yè)務(wù)活動(dòng)執(zhí)行次數(shù)Freq。

(1)令Freq的 m個(gè)分量均為0,即Freq=(0,0,…,0);j=0;

(2)如果A≠?,則任取ai∈A,否則,結(jié)束算法;

(3)A=A-{ai};

(4)如果j=M,則令j=0,轉(zhuǎn)步驟(2);

(5) =Ins(a), =f+1;如果actji則fii

(6)j=j(luò)+1,轉(zhuǎn)步驟(4)。

以表1的工作流日志為例,應(yīng)用上述算法,可以計(jì)算出發(fā)貨單制定、發(fā)貨單審核、采購(gòu)訂單制定三種業(yè)務(wù)活動(dòng)出現(xiàn)的次數(shù)分別為3,3,1。設(shè)工作流模型中共定義了t種活動(dòng),若m<t,則說(shuō)明不是所有活動(dòng)都有機(jī)會(huì)執(zhí)行,這是由模型中的選擇控制結(jié)構(gòu)決定的。因此,循環(huán)控制結(jié)構(gòu)下的活動(dòng)經(jīng)常反復(fù)執(zhí)行,執(zhí)行次數(shù)多;而選擇控制結(jié)構(gòu)下的活動(dòng)“有選擇地”執(zhí)行,執(zhí)行次數(shù)少。

4 服務(wù)預(yù)取模型

為了使給出的服務(wù)預(yù)取模型能夠反映上述幾個(gè)影響因素,即服務(wù)工作流模型中定義的服務(wù)間隔、服務(wù)被執(zhí)行頻度、業(yè)務(wù)發(fā)生頻率以及服務(wù)的執(zhí)行延遲,首先量化這幾個(gè)因素。

文獻(xiàn)[15]提出過(guò)軟構(gòu)件的預(yù)取方法,與集中式運(yùn)行環(huán)境相比,在分布環(huán)境下這些因素對(duì)服務(wù)預(yù)取的影響既相似又有差異。

若服務(wù)A是B的直接前驅(qū)或間接前驅(qū)(表示成A?B),那么就形成了服務(wù)B對(duì)A時(shí)序上的依賴關(guān)系,表示成A→B,依賴關(guān)系的強(qiáng)弱需要反映出來(lái)。兩個(gè)服務(wù)間的依賴關(guān)系越強(qiáng),待預(yù)取的后繼服務(wù)命中率越高,反之則越低。采用ADS(A→B)表示B對(duì)A的依賴程度,因?yàn)槭菃蜗虻?,所以稱作絕對(duì)依賴強(qiáng)度。為反映服務(wù)A、B被反復(fù)調(diào)用的關(guān)系,需綜合考慮A→B和B→A雙向的依賴強(qiáng)度,用RDS(A→B)表示A→B的相對(duì)依賴強(qiáng)度,即“扣除”A對(duì)B的依賴程度后得到的B對(duì)A的依賴程度的“凈值”。服務(wù)的絕對(duì)依賴強(qiáng)度模型和相對(duì)依賴強(qiáng)度模型是服務(wù)預(yù)取計(jì)算模型的關(guān)鍵。

根據(jù)第1章的分析,若服務(wù)A是B的前驅(qū),則ADS(A→B)、RDS(A→B)的大小與服務(wù)A、B被調(diào)用的“間隔”和出現(xiàn)的次數(shù)有關(guān),服務(wù)A、B被調(diào)用的間隔越小、次數(shù)越多,絕對(duì)依賴強(qiáng)度和相對(duì)依賴強(qiáng)度就越大。但對(duì)于RDS(A→B)來(lái)說(shuō),反方向依賴關(guān)系B→A的存在會(huì)使其強(qiáng)度減弱。在工作流日志中,對(duì)于任意一個(gè)工作流實(shí)例,用dis(A→B)表示A、B的間隔,即距離dis(A→B),若A是B的直接前驅(qū),則dis(A→B)=1;若A、B被組裝到同一個(gè)業(yè)務(wù)活動(dòng)中,A和B之間不存在時(shí)序依賴關(guān)系,則dis(A→B)=0。

此外,Web服務(wù)調(diào)用過(guò)程包括服務(wù)傳輸、SOAP報(bào)文的解析、驗(yàn)證和編碼等步驟所產(chǎn)生的延時(shí),同時(shí)存在于客戶端和服務(wù)端,如圖4所示。本文考慮的是調(diào)用端的服務(wù)預(yù)取,對(duì)任意A?B,要考慮以下幾種情況的延遲:①調(diào)用端和服務(wù)A、B均在同一服務(wù)器上產(chǎn)生的延時(shí)忽略;②調(diào)用端和服務(wù)A、B不在同一服務(wù)器上產(chǎn)生的延時(shí)最大;③調(diào)用端和A或者B在同一服務(wù)器上,可以忽略一半的延時(shí)。

下面給出ADS(A→B)的計(jì)算模型:

式中m為服務(wù)工作流實(shí)例的個(gè)數(shù)。服務(wù)之間時(shí)序依賴強(qiáng)度的總體趨勢(shì)隨著距離以指數(shù)關(guān)系減?。?-4],要求dis(A?B)×δdis(A?B)-1隨dis(A?B)的增加而減小,即單調(diào)遞減,其中dis(A?B)取自然數(shù)。通過(guò)對(duì)δ取值的測(cè)試,當(dāng)0<δ<0.5時(shí)可使dis(A?B)×δdis(A?B)-1的結(jié)果隨dis(A?B)的增長(zhǎng)表現(xiàn)出單調(diào)遞減。因此,δ應(yīng)該取小于0.5的最大數(shù)(δ越小,結(jié)果數(shù)據(jù)之間越難以區(qū)分),反復(fù)試驗(yàn)后,δ取0.4較為合適。當(dāng)dis(A?B)=1時(shí),系數(shù)δdis(A?B)-1=1,表示服務(wù)A 與B 直接相鄰。對(duì) m 個(gè)工作流實(shí)例取樣,并依上述關(guān)系做累加體現(xiàn)業(yè)務(wù)頻率。向量(LA,LB)表示服務(wù)調(diào)用延遲,0和1代表無(wú)延遲和有延遲,上述三種情況分別對(duì)應(yīng)三種取值:(0,0),(1,1),(0,1)或(1,0),最后取向量的模,作為最終A→B的依賴強(qiáng)度。

相對(duì)依賴關(guān)系模型同時(shí)考慮了A→B和B→A的絕對(duì)依賴強(qiáng)度,對(duì)于A→B,如果m個(gè)工作流實(shí)例中不存在B→A,則ADS(B→A)=0,此時(shí)A→B的相對(duì)依賴強(qiáng)度等于其絕對(duì)依賴強(qiáng)度;如果m個(gè)工作流實(shí)例中A→B和B→A各自的絕對(duì)依賴強(qiáng)度相同,則RDS(A→B)=0,即服務(wù)A和B被反復(fù)調(diào)用的機(jī)會(huì)均等。

下面分析兩種依賴關(guān)系模型的語(yǔ)義。以圖4顯示的1次工作流實(shí)例執(zhí)行為例,假設(shè)服務(wù)S1,S2,S3,S4,S5和S6以及服務(wù)調(diào)用端均不在同一服務(wù)器上,計(jì)算絕對(duì)依賴強(qiáng)度和相對(duì)依賴強(qiáng)度。

計(jì)算結(jié)果分別如表2和表3所示。

表2 絕對(duì)依賴強(qiáng)度ADS(Si→Sj)計(jì)算示例

表3 相對(duì)依賴強(qiáng)度RDS(Si→Sj)計(jì)算示例

上述結(jié)果反映出兩個(gè)服務(wù)之間絕對(duì)依賴關(guān)系和相對(duì)依賴關(guān)系的語(yǔ)義,如表4所示。

表4 絕對(duì)依賴強(qiáng)度與相對(duì)依賴強(qiáng)度的語(yǔ)義

如果考慮服務(wù)調(diào)用端以及所有被調(diào)服務(wù)所在服務(wù)器的位置,則使用向量(LA,LB)加以區(qū)分,符合向量取模的三角性質(zhì)。絕對(duì)依賴強(qiáng)度雖能體現(xiàn)兩個(gè)服務(wù)間的依賴程度,但還不足以體現(xiàn)反方向的依賴程度,要靠相對(duì)依賴強(qiáng)度補(bǔ)充。當(dāng)樣本數(shù)據(jù)較多時(shí),就能充分反映某時(shí)期內(nèi)業(yè)務(wù)發(fā)生情況對(duì)服務(wù)調(diào)用的影響趨勢(shì)。

5 性能評(píng)價(jià)

5.1 實(shí)驗(yàn)驗(yàn)證

在制造全球化背景下,一個(gè)訂單通常由多個(gè)企業(yè)協(xié)同完成,典型的制造環(huán)境包括銷售商、制造商和物流公司等企業(yè),以此為背景驗(yàn)證和分析服務(wù)預(yù)取模型的有效性,如圖1所示的協(xié)同服務(wù)業(yè)務(wù)過(guò)程。工作流中的活動(dòng)通常以服務(wù)組合的形式對(duì)外提供服務(wù),有些服務(wù)提供給企業(yè)內(nèi)部,有些服務(wù)提供給其他企業(yè),實(shí)現(xiàn)互操作。提供服務(wù)的節(jié)點(diǎn)有銷售商、制造商和物流公司3個(gè)。其中,銷售商節(jié)點(diǎn)上運(yùn)行的業(yè)務(wù)活動(dòng)有A1,A2,A3,A4,A5,A6,A7,A8,A9,制造商節(jié)點(diǎn)上運(yùn)行的業(yè)務(wù)活動(dòng)有A10,A11,A12,A13,物流公司節(jié)點(diǎn)上運(yùn)行的業(yè)務(wù)活動(dòng)有A14,A15,A16,A17。由于業(yè)務(wù)活動(dòng)是由服務(wù)組合而成的,有的業(yè)務(wù)活動(dòng)也會(huì)調(diào)用其他服務(wù)節(jié)點(diǎn)的服務(wù)??紤]最一般的情形:服務(wù)工作流的調(diào)度和執(zhí)行獨(dú)立于這三個(gè)服務(wù)節(jié)點(diǎn),以平臺(tái)的方式對(duì)外提供集成服務(wù)。

實(shí)驗(yàn)包括兩個(gè)步驟:①產(chǎn)生工作流日志;②計(jì)算服務(wù)工作流中服務(wù)的依賴強(qiáng)度。

(1)生成模擬服務(wù)工作流日志 按圖1所示的服務(wù)工作流模型產(chǎn)生日志,每條工作流路徑按相同次數(shù)出現(xiàn),分別運(yùn)行1 000次、2 000次和3 000次(和軟件運(yùn)行環(huán)境無(wú)關(guān)),活動(dòng)A1,A2,…,A17執(zhí)行的次數(shù)如圖5所示。

從運(yùn)行結(jié)果看,不同運(yùn)行次數(shù)下的總體趨勢(shì)是相同的。

(2)計(jì)算服務(wù)工作流中服務(wù)間的依賴強(qiáng)度 選取運(yùn)行1 000次的服務(wù)工作流日志,如圖5所示,活動(dòng) A1,A2,A3,A6,A7,A9,A14,A15,A16,A17執(zhí) 行1 000次,A4,A5,A8,A10,A11,A12,A13執(zhí)行500次,以此執(zhí)行頻率計(jì)算服務(wù)依賴強(qiáng)度。

首先,依據(jù)式(1)計(jì)算24個(gè)服務(wù)間的絕對(duì)依賴強(qiáng)度,限于篇幅,只列出12個(gè)服務(wù)(S1~S12)之間的絕對(duì)依賴強(qiáng)度,如表5所示。

表5 部分服務(wù)間的絕對(duì)依賴強(qiáng)度ADS(Si→Sj_)

其次,依據(jù)式(2)計(jì)算24個(gè)服務(wù)之間的相對(duì)依賴強(qiáng)度,限于篇幅,只列出12個(gè)服務(wù)(S1~S12)之間的相對(duì)依賴強(qiáng)度,如表6所示。

表6 部分服務(wù)之間的相對(duì)依賴強(qiáng)

從表4給出的定性分析結(jié)果來(lái)看,預(yù)取服務(wù)最好選取絕對(duì)依賴強(qiáng)度大、同時(shí)相對(duì)依賴強(qiáng)度小的服務(wù),但這個(gè)閾值也可根據(jù)實(shí)際需要進(jìn)行調(diào)整,如希望預(yù)取更多的服務(wù)。本例中,若選取絕對(duì)依賴強(qiáng)度(絕對(duì)值)最大值的1/3作為其閾值,選取相對(duì)依賴強(qiáng)度(絕對(duì)值)最大值的1/2作為其閾值,即需同時(shí)滿足:①0≤相對(duì)依賴強(qiáng)度的絕對(duì)值≤1.931;②絕對(duì)依賴強(qiáng)度≥6.662,最終得到服務(wù)預(yù)取集合:{S2→S2,S2→S7,S7→S2}。若希望預(yù)取更多服務(wù),則可降低絕對(duì)依賴強(qiáng)度閾值,不妨設(shè)為最大值的1/4,若相對(duì)依賴強(qiáng)度閾值不變,則最終得到服務(wù)預(yù)取集合為:{S2→S2,S2→S7,S2→S21,S7→S2,S21→S2}。

從表4給出的定性分析結(jié)果來(lái)看,預(yù)取服務(wù)最好選取絕對(duì)依賴強(qiáng)度大、同時(shí)相對(duì)依賴強(qiáng)度小的服務(wù),但這個(gè)閾值也可根據(jù)實(shí)際需要進(jìn)行調(diào)整,如希望預(yù)取更多的服務(wù)。本例中,若選取絕對(duì)依賴強(qiáng)度(絕對(duì)值)最大值的1/3作為其閾值,選取相對(duì)依賴強(qiáng)度(絕對(duì)值)最大值的1/2作為其閾值,即需同時(shí)滿足:①0≤相對(duì)依賴強(qiáng)度的絕對(duì)值≤1.931;②絕對(duì)依賴強(qiáng)度≥6.662,最終得到服務(wù)預(yù)取集合:{S2→S2,S2→S7,S7→S2}。若希望預(yù)取更多服務(wù),則可降低絕對(duì)依賴強(qiáng)度閾值,不妨設(shè)為最大值的1/4,若相對(duì)依賴強(qiáng)度閾值不變,則最終得到服務(wù)預(yù)取集合為:{S2→S2,S2→S7,S2→S21,S7→S2,S21→S2}。

從表4給出的定性分析結(jié)果來(lái)看,預(yù)取服務(wù)最好選取絕對(duì)依賴強(qiáng)度大、同時(shí)相對(duì)依賴強(qiáng)度小的服務(wù),但這個(gè)閾值也可根據(jù)實(shí)際需要進(jìn)行調(diào)整,如希望預(yù)取更多的服務(wù)。本例中,若選取絕對(duì)依賴強(qiáng)度(絕對(duì)值)最大值的1/3作為其閾值,選取相對(duì)依賴強(qiáng)度(絕對(duì)值)最大值的1/2作為其閾值,即需同時(shí)滿足:①0≤相對(duì)依賴強(qiáng)度的絕對(duì)值≤1.931;②絕對(duì)依賴強(qiáng)度≥6.662,最終得到服務(wù)預(yù)取集合:{S2→S2,S2→S7,S7→S2}。若希望預(yù)取更多服務(wù),則可降低絕對(duì)依賴強(qiáng)度閾值,不妨設(shè)為最大值的1/4,若相對(duì)依賴強(qiáng)度閾值不變,則最終得到服務(wù)預(yù)取集合為:{S2→S2,S2→S7,S2→S21,S7→S2,S21→S2}。

從表4給出的定性分析結(jié)果來(lái)看,預(yù)取服務(wù)最好選取絕對(duì)依賴強(qiáng)度大、同時(shí)相對(duì)依賴強(qiáng)度小的服務(wù),但這個(gè)閾值也可根據(jù)實(shí)際需要進(jìn)行調(diào)整,如希望預(yù)取更多的服務(wù)。本例中,若選取絕對(duì)依賴強(qiáng)度(絕對(duì)值)最大值的1/3作為其閾值,選取相對(duì)依賴強(qiáng)度(絕對(duì)值)最大值的1/2作為其閾值,即需同時(shí)滿足:①0≤相對(duì)依賴強(qiáng)度的絕對(duì)值≤1.931;②絕對(duì)依賴強(qiáng)度≥6.662,最終得到服務(wù)預(yù)取集合:{S2→S2,S2→S7,S7→S2}。若希望預(yù)取更多服務(wù),則可降低絕對(duì)依賴強(qiáng)度閾值,不妨設(shè)為最大值的1/4,若相對(duì)依賴強(qiáng)度閾值不變,則最終得到服務(wù)預(yù)取集合為:{S2→S2,S2→S7,S2→S21,S7→S2,S21→S2}。

從表4給出的定性分析結(jié)果來(lái)看,預(yù)取服務(wù)最好選取絕對(duì)依賴強(qiáng)度大、同時(shí)相對(duì)依賴強(qiáng)度小的服務(wù),但這個(gè)閾值也可根據(jù)實(shí)際需要進(jìn)行調(diào)整,如希望預(yù)取更多的服務(wù)。本例中,若選取絕對(duì)依賴強(qiáng)度(絕對(duì)值)最大值的1/3作為其閾值,選取相對(duì)依賴強(qiáng)度(絕對(duì)值)最大值的1/2作為其閾值,即需同時(shí)滿足:①0≤相對(duì)依賴強(qiáng)度的絕對(duì)值≤1.931;②絕對(duì)依賴強(qiáng)度≥6.662,最終得到服務(wù)預(yù)取集合:{S2→S2,S2→S7,S7→S2}。若希望預(yù)取更多服務(wù),則可降低絕對(duì)依賴強(qiáng)度閾值,不妨設(shè)為最大值的1/4,若相對(duì)依賴強(qiáng)度閾值不變,則最終得到服務(wù)預(yù)取集合為:{S2→S2,S2→S7,S2→S21,S7→S2,S21→S2}。

從表4給出的定性分析結(jié)果來(lái)看,預(yù)取服務(wù)最好選取絕對(duì)依賴強(qiáng)度大、同時(shí)相對(duì)依賴強(qiáng)度小的服務(wù),但這個(gè)閾值也可根據(jù)實(shí)際需要進(jìn)行調(diào)整,如希望預(yù)取更多的服務(wù)。本例中,若選取絕對(duì)依賴強(qiáng)度(絕對(duì)值)最大值的1/3作為其閾值,選取相對(duì)依賴強(qiáng)度(絕對(duì)值)最大值的1/2作為其閾值,即需同時(shí)滿足:①0≤相對(duì)依賴強(qiáng)度的絕對(duì)值≤1.931;②絕對(duì)依賴強(qiáng)度≥6.662,最終得到服務(wù)預(yù)取集合:{S2→S2,S2→S7,S7→S2}。若希望預(yù)取更多服務(wù),則可降低絕對(duì)依賴強(qiáng)度閾值,不妨設(shè)為最大值的1/4,若相對(duì)依賴強(qiáng)度閾值不變,則最終得到服務(wù)預(yù)取集合為:{S2→S2,S2→S7,S2→S21,S7→S2,S21→S2}。

從表4給出的定性分析結(jié)果來(lái)看,預(yù)取服務(wù)最好選取絕對(duì)依賴強(qiáng)度大、同時(shí)相對(duì)依賴強(qiáng)度小的服務(wù),但這個(gè)閾值也可根據(jù)實(shí)際需要進(jìn)行調(diào)整,如希望預(yù)取更多的服務(wù)。本例中,若選取絕對(duì)依賴強(qiáng)度(絕對(duì)值)最大值的1/3作為其閾值,選取相對(duì)依賴強(qiáng)度(絕對(duì)值)最大值的1/2作為其閾值,即需同時(shí)滿足:①0≤相對(duì)依賴強(qiáng)度的絕對(duì)值≤1.931;②絕對(duì)依賴強(qiáng)度≥6.662,最終得到服務(wù)預(yù)取集合:{S2→S2,S2→S7,S7→S2}。若希望預(yù)取更多服務(wù),則可降低絕對(duì)依賴強(qiáng)度閾值,不妨設(shè)為最大值的1/4,若相對(duì)依賴強(qiáng)度閾值不變,則最終得到服務(wù)預(yù)取集合為:{S2→S2,S2→S7,S2→S21,S7→S2,S21→S2}。

5.2 與相關(guān)方法比較

首先,與之前的研究成果[15]相比較。文獻(xiàn)[15]考慮的是軟構(gòu)件的動(dòng)態(tài)預(yù)取模型,在集中式的運(yùn)行環(huán)境下,構(gòu)件間調(diào)用的延遲可以忽略。而本文的預(yù)取對(duì)象是Web服務(wù),其分布運(yùn)行的特點(diǎn)決定了服務(wù)調(diào)用產(chǎn)生的延遲不能忽略,在本文的模型中采用向量(LA,LB)以及最后取模運(yùn)算來(lái)體現(xiàn)更加準(zhǔn)確。

其次,與較典型的預(yù)取方法比較。為了對(duì)比測(cè)試模型的預(yù)取性能,本文選用與文中方法相似的兩個(gè)預(yù)取方法——基于條件概率的預(yù)測(cè)[8]和基于訪問(wèn)路徑的預(yù)取方法[7]做比較,并采用預(yù)測(cè)精確度P和適用度T作為評(píng)價(jià)指標(biāo),具體定義如下:

定義2 預(yù)測(cè)精確度[17]。預(yù)測(cè)精確度P表示正確預(yù)測(cè)的Web服務(wù)對(duì)象數(shù)Np與預(yù)測(cè)總的Web服務(wù)對(duì)象數(shù)N的比率,即P=Np/N。

如果在接下來(lái)的一個(gè)預(yù)測(cè)窗口內(nèi)用戶對(duì)預(yù)測(cè)Web服務(wù)對(duì)象進(jìn)行了請(qǐng)求,則稱該預(yù)測(cè)是正確的,否則不正確。

定義3 適用度。適用度T表示模型預(yù)測(cè)的請(qǐng)求數(shù)Qp與總的請(qǐng)求數(shù)Q的比率,即T=Qp/Q。

以圖1所示的服務(wù)工作流模型為例,分別用不同的方法進(jìn)行模擬實(shí)驗(yàn),比較在相同的硬件條件下,選取不同的概率門限,按照三種不同方法計(jì)算出預(yù)取服務(wù)的精確度及適用度。實(shí)驗(yàn)結(jié)果表明,考慮了服務(wù)間的依賴強(qiáng)度與業(yè)務(wù)頻率的影響,模型的預(yù)測(cè)精確度和適用度都有明顯改善。圖6a顯示了三種模型的預(yù)測(cè)精確度隨概率門限的增加而增加,本文所提方法優(yōu)于其他兩種方法。這是因?yàn)樵摲椒ǔ浞挚紤]了業(yè)務(wù)頻率,縮小了模型預(yù)測(cè)的 Web服務(wù)范圍。圖6b說(shuō)明三種方法的適用度隨概率門限的增加而減少,本方法所提模型保持了較高的適用度。

實(shí)驗(yàn)結(jié)果表明,本文提出的方法具有明顯的優(yōu)勢(shì)。這是因?yàn)樵摲椒ń⒃诜?wù)工作流模型之上,不但自身可確定被預(yù)取對(duì)象的順序,而且能挖掘業(yè)務(wù)頻率,從而縮小預(yù)測(cè)的范圍。而基于訪問(wèn)路徑的預(yù)取方法,需要大量的訓(xùn)練數(shù)據(jù)?;跅l件概率的預(yù)取方法是根據(jù)用戶訪問(wèn)記錄中Web服務(wù)之間的轉(zhuǎn)移概率P,再根據(jù)P的大小預(yù)測(cè)下一個(gè)Web服務(wù)。該方法取決于用戶的訪問(wèn)偏好和操作的熟練程度。

5.3 性能討論

由于Web服務(wù)技術(shù)采用了SOAP,服務(wù)調(diào)用時(shí)延遲較大。動(dòng)態(tài)網(wǎng)頁(yè)靜態(tài)化是較典型的解決辦法,對(duì)經(jīng)常被調(diào)用的Web服務(wù)可做類似處理。具體地,以協(xié)同制造環(huán)境下的某企業(yè)服務(wù)器為例,采用本文所提的預(yù)取方法預(yù)測(cè)下一個(gè)可能被調(diào)用的服務(wù),并使用出現(xiàn)頻率高的參數(shù)對(duì)網(wǎng)頁(yè)作靜態(tài)化處理。這些服務(wù)可以屬于該服務(wù)器,也可以是其他企業(yè)的,可有效提高企業(yè)間的互操作效率。

企業(yè)的業(yè)務(wù)數(shù)據(jù)時(shí)刻在變化,對(duì)預(yù)取的服務(wù)集可并行地做靜態(tài)化處理,代價(jià)可忽略。動(dòng)態(tài)網(wǎng)頁(yè)靜態(tài)化后的方法,但是靜態(tài)化處理時(shí)存在參數(shù)命中率的問(wèn)題,即用戶調(diào)用服務(wù)時(shí)使用某些參數(shù)的可能性,因此預(yù)取的代價(jià)主要取決于參數(shù)的命中率,若靜態(tài)化處理所采用的參數(shù)在執(zhí)行時(shí)未被命中,則效率就沒(méi)有改善。但如果參數(shù)的使用頻率很高,則可大大提高預(yù)測(cè)的命中率,進(jìn)而提高服務(wù)的響應(yīng)速度,這也是所有預(yù)取、緩存技術(shù)應(yīng)用的最佳環(huán)境。

6 結(jié)束語(yǔ)

本文方法建立在服務(wù)工作流之上,有工作流模型指導(dǎo)流程的推進(jìn),因此性能上占有絕對(duì)優(yōu)勢(shì),提出的服務(wù)預(yù)取模型包括絕對(duì)依賴強(qiáng)度和相對(duì)依賴強(qiáng)度,全方位地體現(xiàn)出影響服務(wù)預(yù)取的業(yè)務(wù)因素,為服務(wù)緩沖提供了更加精確的預(yù)測(cè),在多企業(yè)協(xié)同制造的環(huán)境下可提供更好的服務(wù)預(yù)取策略,以減輕應(yīng)用服務(wù)器的運(yùn)行負(fù)載,縮短用戶訪問(wèn)的響應(yīng)時(shí)間。近年來(lái),云制造作為協(xié)同制造的一種新模式得到了廣泛的關(guān)注和研究,其系統(tǒng)平臺(tái)具有“集中資源分散服務(wù)”的特點(diǎn),云制造環(huán)境下的服務(wù)預(yù)取更加重要,相應(yīng)的預(yù)取模型是未來(lái)的研究方向。

[1] DENG Shuiguang,HUANG Longtao,YIN Jianwei,et al.Technical framework form Web service composition and its progress[J].Computer Integrated Manufacturing Systems,2011,17(2):404-412(in Chinese).[鄧水光,黃龍濤,尹建偉,等.Web服務(wù)組合技術(shù)框架及其研究進(jìn)展[J].計(jì)算機(jī)集成制造系統(tǒng),2011,17(2):404-412.]

[2] GUO Chunli,LI Haibo.Controllability of quality of service in Web service workflow system based on variable granularity[J].China Mechanical Engineering,2011,22(21):2613-2618(in Chinese).[郭春麗,李海波.基于可變粒度的服務(wù)工作流系統(tǒng)服務(wù)質(zhì)量可控性研究[J].中國(guó)機(jī)械工程,2011,22(21):2613-2618.]

[3] CHEN Weiling,YIN Shiqun,QIU Yuhui.Schema reasoning and semantic representation for citation semantic link network[C]//Proceedings of the 3rd International Conference on Intelligent Information Technology Application.Washington,D.C.,USA:IEEE,2009:366-369.

[4] DRAKATOSA S,PISSINOUA N,MAKKIA K et al.A context-aware cache structure for mobile computing environments[J].Journal of System and Software,2007,80(7):1102-1119.

[5] COHEN F.FastSOA:accelerate SOA using XML,XQuery and native XML database technology[EB/OL].(2006-03-06)[2012-05-06].http://www.ibm.com/developerworks/cn/xml/x-accsoa/index.html.

[6] BENEVENUTO F,DUARTE F,ALMEIDA V,et al.Web cache replacement policies:Properties,limitations and implications[C]//Proceedings of the 3rd Latin American Web Congress. Washington, D. C., USA:IEEE Computer Society,2005.

[7] XU Huanqing,WANG Yongcheng.A Web pre-fetching model based on analyzing user access pattern[J].Journal of Software,2003,14(6):1142-1147(in Chinese).[許歡慶,王永成.基于用戶訪問(wèn)路徑分析的網(wǎng)頁(yè)預(yù)取模型[J].軟件學(xué)報(bào),2003,14(6):1142-1147.]

[8] ZHANG Boping,SHI Lei.Study on the Web pre-fetching based on the relationship of the Web structure[D].Zhengzhou:University of Zhengzhou,2006(in Chinese).[張泊平,石磊.基于網(wǎng)頁(yè)結(jié)構(gòu)相關(guān)性預(yù)取技術(shù)研究[D].鄭州大學(xué),2006.]

[9] LI Song,WANG Wendong,CUI Yidong,et al.A novel pre

fetching method for scene-based mobile social network service[C]//Proceedings of the 3rd IEEE International Conference on Broadband Network and Multimedia Technology.Washington,D.C.,USA:IEEE Computer Society,2010:144-148.

[10] YU Fang,JIANG Changjun,F(xiàn)U Ying.Incremental data prefetching for map service in mobile navigation application[C]//Proceedings of International Conference on Wireless Communications,Networking and Mobile Computing,Washington,D.C.,USA:IEEE Computer Society,2008.

[11] KANG Sang-Won,GIL Joon-Min,KIM Jongwan,et al.Description-based semantic prefetching scheme for data management in location-based services[J].Journal of Information Science and Engineering,2008,24(6):1788-1820.

[12] LIEN C C,WANG C C.An effective prefetching technique for location-based services with PPM [C]//Proceedings of the 9th Joint Conference on Information Sciences.DOI:10.2991/jcis.2006.221.

[13] XUE Jiansheng,CHENG Zi'ao,SUN Xin.A distribution technology based on segmentation prefetching and pipelining in classified streaming media service[C]//Proceedings of International Conference on Multimedia Technology.Washington,D.C.,USA:IEEE Computer Society,2010.

[14] KRISHNAPPA D K M,KHEMMARAT S,GAO Lixin,et al.On the feasibility of prefetching and caching for online TV services:a measurement study on hulu[C]//Proceedings of the 12th International Conference on Passive and Active Measurement. Berlin,Germany:Springer-Verlag,2011:72-80.

[15] LI Haibo,ZHAN Dechen,XU Xiaofei.Dynamic component prefetching method for workflow management system[J].Chinese Journal of Computers,2012,35(5):1038-1045(in Chinese).[李海波,戰(zhàn)德臣,徐曉飛.面向工作流管理系統(tǒng)的動(dòng)態(tài)構(gòu)件預(yù)取方法[J].計(jì)算機(jī)學(xué)報(bào),2012,35(5):1038-1045.]

[16] LI Haibo.Workflow management system oriented multigranularity component organization[J].China Mechanical Engineering,2011,22(16):1942-1948(in Chinese).[李海波.面向工作流管理系統(tǒng)的多粒度構(gòu)件組織技術(shù)[J].中國(guó)機(jī)械工程,2011,22(16):1942-1948.]

[17] ZHANG Zhili,QI Deyu.Study on the key techinques of Web accelerating[D].Guangzhou:South China University of Technology,2006(in Chinese).[張志立,齊德顯.Web加速關(guān)鍵技術(shù)研究[D].華南理工大學(xué),2006.]

猜你喜歡
調(diào)用日志閾值
一名老黨員的工作日志
扶貧日志
心聲歌刊(2020年4期)2020-09-07 06:37:14
核電項(xiàng)目物項(xiàng)調(diào)用管理的應(yīng)用研究
小波閾值去噪在深小孔鉆削聲發(fā)射信號(hào)處理中的應(yīng)用
基于自適應(yīng)閾值和連通域的隧道裂縫提取
LabWindows/CVI下基于ActiveX技術(shù)的Excel調(diào)用
游學(xué)日志
比值遙感蝕變信息提取及閾值確定(插圖)
河北遙感(2017年2期)2017-08-07 14:49:00
基于系統(tǒng)調(diào)用的惡意軟件檢測(cè)技術(shù)研究
室內(nèi)表面平均氡析出率閾值探討
绥阳县| 红原县| 黎平县| 始兴县| 无棣县| 马山县| 林西县| 潮安县| 普兰店市| 改则县| 嵊州市| 新龙县| 屏东市| 平乡县| 济阳县| 澎湖县| 江西省| 浦江县| 苏尼特右旗| 文水县| 正蓝旗| 房产| 伊宁市| 洛浦县| 武胜县| 大田县| 武宁县| 斗六市| 乐山市| 馆陶县| 合川市| 北票市| 安岳县| 乐清市| 定州市| 来安县| 贡觉县| 巨鹿县| 黔西| 萨嘎县| 镇宁|