專利名稱:基于反饋機(jī)制的網(wǎng)格任務(wù)調(diào)度方法
技術(shù)領(lǐng)域:
本發(fā)明屬于計算機(jī)系統(tǒng)結(jié)構(gòu)領(lǐng)域的分布式計算技術(shù),具體涉及一種基于反饋機(jī)制的網(wǎng)格任務(wù)調(diào)度方法(Feedback Based Grid Scheduling,F(xiàn)BGS)。
背景技術(shù):
網(wǎng)格的根本目標(biāo)是協(xié)調(diào)資源的共享。在網(wǎng)格環(huán)境中存在眾多資源,這些資源的特性及資源所處的環(huán)境各不相同。如何從紛繁復(fù)雜的資源中,選擇合適的資源供任務(wù)執(zhí)行是網(wǎng)格計算著力解決的問題之一。該問題也就是所謂的任務(wù)調(diào)度問題。任務(wù)調(diào)度的目的是在包含大量不同資源的網(wǎng)格環(huán)境中,考慮各網(wǎng)格節(jié)點的狀態(tài)、網(wǎng)絡(luò)通信性能等參數(shù),把不同的任務(wù)以合理的方式分配到相應(yīng)的網(wǎng)格結(jié)點上去完成。但由于網(wǎng)格環(huán)境的特性,使得網(wǎng)格環(huán)境下的任務(wù)調(diào)度具有不同于傳統(tǒng)調(diào)度的特征。首先,在網(wǎng)格環(huán)境中資源節(jié)點具有相當(dāng)大的自治性,各節(jié)點自行決定本地的調(diào)度策略。網(wǎng)格平臺既不能象傳統(tǒng)調(diào)度一樣對資源進(jìn)行完全控制,如暫停其上正在運行的任務(wù),也不能對其調(diào)度策略進(jìn)行規(guī)定。其次,網(wǎng)格各資源的性能及負(fù)載等狀態(tài)是動態(tài)變化的,網(wǎng)格平臺很難準(zhǔn)確了解網(wǎng)格資源的狀態(tài)。第三,同類型的網(wǎng)格資源可能存在多個,這就使得網(wǎng)格環(huán)境下可以有多種選擇。最后,網(wǎng)格資源分布在網(wǎng)絡(luò)上,網(wǎng)絡(luò)通信的延遲會對任務(wù)調(diào)度的性能造成影響。特別是隨著網(wǎng)格資源互聯(lián)互通的發(fā)展,網(wǎng)格資源都以服務(wù)的形式表現(xiàn),出現(xiàn)了基于服務(wù)的網(wǎng)格標(biāo)準(zhǔn),這進(jìn)一步增加了網(wǎng)格任務(wù)調(diào)度的延遲。基于此分析,網(wǎng)格環(huán)境下的任務(wù)調(diào)度同傳統(tǒng)環(huán)境下的任務(wù)調(diào)度相比有著多方面不同,網(wǎng)格環(huán)境下的任務(wù)調(diào)度是一個非常困難的問題。
目前,圍繞著網(wǎng)格中的任務(wù)調(diào)度問題,國內(nèi)外已經(jīng)做了大量的研究工作,先后提出了各種調(diào)度算法。這些算法按調(diào)度策略可以分為在線模式和批模式兩種。在線模式是任務(wù)一到來就加以映射,而批模式則是把任務(wù)收集起來等映射事件到來后才對這些任務(wù)進(jìn)行集中映射。相對而言,批模式得到了大量的資源信息,從而可以做出更合理的任務(wù)映射策略。但批模式算法需要花費大量時間計算任務(wù)調(diào)度表,算法缺少靈活性;任何變化,如任務(wù)添加、刪除或任務(wù)特征改變等,都需要重新計算調(diào)度表。而且批模式算法每隔一定周期進(jìn)行一次調(diào)度,因此越早到達(dá)的任務(wù),等待時間越長,從而使得任務(wù)的響應(yīng)時間過長。在線調(diào)度算法的環(huán)境適應(yīng)性好,在多種環(huán)境下操作性能良好,算法靈活,因此在線模式更適合于網(wǎng)格環(huán)境。許多網(wǎng)格中間件,如ChinaGrid支撐平臺CGSP、VEGA和CROWN,均采用的是在線調(diào)度模式。但目前的在線調(diào)度算法在如下幾個方面未作有效考慮首先,網(wǎng)格環(huán)境下資源的性能與可用性均處于變化之中。目前的網(wǎng)格調(diào)度系統(tǒng)需要訪問信息服務(wù)獲取資源的信息。但是信息服務(wù)中的服務(wù)信息更新周期長,而且訪問信息服務(wù)會產(chǎn)生延遲。如果網(wǎng)格調(diào)度器單純根據(jù)信息服務(wù)的信息進(jìn)行調(diào)度,可能導(dǎo)致某些服務(wù)負(fù)載過大,而另外一些服務(wù)利用率不高。之所以存在這些問題,主要是由于網(wǎng)格調(diào)度器沒有有效地根據(jù)資源節(jié)點的狀態(tài)信息,而是根據(jù)信息服務(wù)中的非實時服務(wù)信息來進(jìn)行任務(wù)調(diào)度。其次,目前網(wǎng)格調(diào)度系統(tǒng)通常假設(shè)知道或能夠獲取網(wǎng)格上所有節(jié)點的狀態(tài),而且能夠獲知節(jié)點上的調(diào)度策略。最后,大多數(shù)網(wǎng)格調(diào)度算法未考慮網(wǎng)絡(luò)通信延遲。在網(wǎng)格環(huán)境中資源節(jié)點是自治的,網(wǎng)格調(diào)度器不能夠?qū)Y源節(jié)點實現(xiàn)完全控制。由于網(wǎng)絡(luò)通信的開銷,如果網(wǎng)格調(diào)度器將一子任務(wù)調(diào)度到一性能下降的資源節(jié)點上執(zhí)行,那么子任務(wù)可能會等待很長時間才能得到處理。極端情況下,延遲過大,網(wǎng)格調(diào)度器認(rèn)為該服務(wù)不可用,從而不得不重新調(diào)度該子任務(wù)到新的資源節(jié)點上。這兩種情況都會使得任務(wù)的響應(yīng)時間增大。這些都使得現(xiàn)有的網(wǎng)格任務(wù)調(diào)度算法在調(diào)度時效性、適用性方面存在一定的缺陷。
發(fā)明內(nèi)容
本發(fā)明的目的就是針對現(xiàn)有技術(shù)的不足,提供一種基于反饋機(jī)制的網(wǎng)格任務(wù)調(diào)度方法,該方法能夠很好地適應(yīng)網(wǎng)格環(huán)境的動態(tài)性,提高網(wǎng)格平臺的吞吐率,降低任務(wù)的平均完成時間,提高網(wǎng)格的響應(yīng)速度。
本發(fā)明提供的基于反饋機(jī)制的網(wǎng)格任務(wù)調(diào)度方法,其步驟包括(1)網(wǎng)格調(diào)度器設(shè)置本地緩存,并利用緩存定時檢測操作清理緩存中長期不用的資源記錄信息;(2)當(dāng)請求到達(dá)網(wǎng)格調(diào)度器時,將其放入網(wǎng)格調(diào)度器的請求隊列中;(3)從上述請求隊列中取出一個請求,并從該請求中提取可執(zhí)行任務(wù);(4)從緩存中選取與該任務(wù)所請求資源相匹配的資源集合R;(5)判斷該任務(wù)獲取的資源集合R是否為空,是則跳轉(zhuǎn)至步驟(6),否則跳轉(zhuǎn)至步驟(7);(6)根據(jù)任務(wù)所請求資源及緩存更新操作對緩存中的資源記錄信息進(jìn)行更新,然后返回步驟(4);(7)對獲得的資源集合R,根據(jù)資源記錄的最近響應(yīng)時間TR由小到大進(jìn)行排序,獲取排序后的資源集合中的排頭資源,即最近響應(yīng)時間TR最小的資源r,并將其作為候選資源;(8)根據(jù)候選資源r,按照下述過程從資源集合R中選取最優(yōu)的資源作最終選定資源rs(C1)判斷當(dāng)前候選資源r的資源利用權(quán)值 是否在權(quán)值變動范圍 之內(nèi),其中σ‾r=TR‾rTV‾r-1,]]>TVr為最近一次提交任務(wù)到資源r的相鄰提交時間間隔,TRr為最近一次資源r的響應(yīng)時間,RCr為等待資源r提供服務(wù)的任務(wù)個數(shù),是則將資源r作為最終選定資源rs并跳轉(zhuǎn)至(C6),否則跳轉(zhuǎn)到(C2);(C2)構(gòu)建未檢測隊列,將資源集合中除候選資源外的其他資源放入未檢測隊列;(C3)取未檢測隊列的隊首資源為待檢測資源i,并在未檢測隊列中刪除資源i;(C4)計算候選資源r與待檢資源i最近響應(yīng)時間差ΔTRn,候選資源r響應(yīng)時間波動差ΔTRjr,待檢資源i響應(yīng)時間波動差ΔTRji,如果(ΔTRri-ΔTRjr+ΔTRji)≤0,]]>即待檢資源i提交后的響應(yīng)時間小于候選資源r提交后的響應(yīng)時間,則跳轉(zhuǎn)到(C5),否則跳轉(zhuǎn)到(C3);(C5)判斷資源i的資源利用權(quán)值 是否在權(quán)值變動范圍 之內(nèi),其中,σ‾i=TR‾iTV‾i-1,]]>TVi為最近一次提交任務(wù)到資源I的相鄰提交時間間隔,TRi為最近一次資源i的響應(yīng)時間,RCi為等待資源i提供服務(wù)的任務(wù)個數(shù),是則將資源i作為最終選定資源rs并跳轉(zhuǎn)至(C6),否則跳轉(zhuǎn)到(C3);(C6)將最終選定資源rs返回網(wǎng)格任務(wù)調(diào)度方法;(9)將該任務(wù)提交給最終選定資源rs,資源提供服務(wù)的任務(wù)計數(shù)器RCrs加1;(10)資源處理完請求后返回到網(wǎng)格調(diào)度器,計算緩存中相應(yīng)資源的平均響應(yīng)時間ART,該資源提供服務(wù)的任務(wù)計數(shù)器RCrs減1,并更新資源最近響應(yīng)時間LRT及最近一次更新資源時間RUT;(11)判斷請求隊列是否仍有請求或者有新請求到來,是則返回步驟(2),直到網(wǎng)格調(diào)度器關(guān)閉。
本發(fā)明針對當(dāng)前網(wǎng)格環(huán)境下任務(wù)調(diào)度方法所存在的缺陷,提出了一種基于反饋機(jī)制的網(wǎng)格任務(wù)調(diào)度方法。該調(diào)度方法收集最近訪問到的資源信息,如資源名、資源性能、資源前一次響應(yīng)時間、資源平均響應(yīng)時間及最近一次更新時間等信息,并將其放入緩存中來輔助網(wǎng)格調(diào)度器進(jìn)行調(diào)度決策(這里所提到的緩存是指本地一塊存儲區(qū)域,它既可以是內(nèi)存,也可以是其它存儲設(shè)備)。與現(xiàn)有的網(wǎng)格調(diào)度方案相比,本發(fā)明方法主要有如下特點(1)該方法以網(wǎng)格調(diào)度器實際收集的資源狀態(tài)數(shù)據(jù)為依據(jù),利用資源節(jié)點處理任務(wù)的歷史數(shù)據(jù)來推斷資源節(jié)點的狀態(tài),不需要每隔一段時間采集資源的狀態(tài),具有相當(dāng)?shù)膶崟r性和準(zhǔn)確性;(2)該方法不會對資源的性能產(chǎn)生額外影響,而且不會額外增加網(wǎng)絡(luò)通信負(fù)擔(dān);
(3)該方法減少了同信息服務(wù)交互所導(dǎo)致的網(wǎng)絡(luò)延遲,使得任務(wù)的響應(yīng)時間縮短。
圖1為本網(wǎng)格任務(wù)調(diào)度方法流程示意圖;圖2為緩存定時檢測操作的流程示意圖;圖3為緩存更新操作的流程示意圖;圖4為資源檢測操作的流程示意圖。
具體實施例方式
本方法對硬件環(huán)境沒有特殊要求,軟件環(huán)境為網(wǎng)格平臺。基于反饋機(jī)制的網(wǎng)格任務(wù)調(diào)度方法中最重要的是緩存更新和反饋調(diào)度。
緩存更新的基本原理是網(wǎng)格調(diào)度器在調(diào)度任務(wù)時設(shè)置緩存,緩存中存放最近訪問過的服務(wù)信息,如資源名、資源最近響應(yīng)時間LRT(Last Response Time)、資源平均響應(yīng)時間ART(Average Response Time)、上一次提交任務(wù)時間等信息。這些信息是網(wǎng)格任務(wù)調(diào)度的依據(jù),可幫助網(wǎng)格調(diào)度器正確地決策將任務(wù)提交給哪些資源來完成。資源性能可能會隨配置、程序升級等方面的變化而改變,新的資源也有可能加入到網(wǎng)格環(huán)境中,這都使得網(wǎng)格資源處于動態(tài)變化之中。因此網(wǎng)格調(diào)度器需要及時更新緩存中的資源信息,使其能夠反映網(wǎng)格資源的最新變化。緩存中的信息更新包括兩個方面一方面是緩存中已有資源信息的更新,這部分通常可以根據(jù)最近一次資源執(zhí)行任務(wù)的情況來完成更新;另一方面是將新的性能更優(yōu)的網(wǎng)格資源信息加入到緩存中或根據(jù)信息服務(wù)中的信息更新緩存中的信息,這部分通常需要與緩存中已有資源的性能進(jìn)行比較后才能確定新資源能否加入緩存中。為了防止用過時的信息更新緩存,每次更新都需要記載最近一次更新資源時間RUT(Recent Update Time)。更新后的緩存中的資源需要根據(jù)性能及最近訪問時間進(jìn)行排序,以便網(wǎng)格調(diào)度器能夠有效地選取資源。如果緩存空間不夠,需要刪除緩存中那些在一定時間內(nèi)未使用的資源信息。
反饋調(diào)度的基本原理是假設(shè)網(wǎng)格調(diào)度器提交任務(wù)到同一資源的相鄰提交時間間隔為TV,資源的最近響應(yīng)時間為TR。如果服務(wù)的執(zhí)行時間大于TV,那么后續(xù)到達(dá)該服務(wù)的任務(wù)將會形成隊列。此時請求需在隊列中等待一段時間,以便服務(wù)處理完前面的任務(wù)后再來響應(yīng)該任務(wù)。如果服務(wù)的執(zhí)行時間小于TV,那么服務(wù)處理完所有任務(wù)后就一直處在間斷空閑狀態(tài),直到下一任務(wù)的到來。理想情況下應(yīng)是一個服務(wù)處理完一個任務(wù)以后,后面一個任務(wù)此時恰恰到達(dá),這時任務(wù)的等待時間最短,服務(wù)利用率也最高。但等待時間最短,并不能說明處理時間最短,調(diào)度任務(wù)時不但要考慮等待時間,也要考慮處理時間。因此反饋調(diào)度主要依據(jù)提交任務(wù)到資源的時間間隔以及資源的響應(yīng)時間來推斷資源的當(dāng)前狀態(tài),以決定是否能夠向該資源提交任務(wù)。
下面結(jié)合附圖對本發(fā)明作進(jìn)一步詳細(xì)的說明。
首先,我們將σ‾r=TR‾rTV‾r-1]]>作為判斷資源狀態(tài)的指標(biāo),其中 表示到目前為止資源r的平均響應(yīng)時間, 表示到目前為止網(wǎng)格調(diào)度器提交任務(wù)到資源r的平均相鄰提交時間間隔。如圖1所示,本發(fā)明調(diào)度方法包括以下步驟(1)網(wǎng)格調(diào)度器設(shè)置本地緩存,并定時檢測操作清理緩存中長期不用的資源記錄信息;緩存定時檢測操作的具體過程如圖2所示,包括(A1)設(shè)置計時器中斷時間間隔t,推薦值為60秒;(A2)計時器計時;(A3)判斷計時器是否到時,是則跳轉(zhuǎn)到(A4),否則跳轉(zhuǎn)到(A2);(A4)判斷緩存是否有剩余空間,是則跳轉(zhuǎn)到(A2),否則跳轉(zhuǎn)到(A5);(A5)讀取緩存中未檢測的資源記錄信息;(A6)判斷該記錄信息所記錄資源是否在2t時間間隔內(nèi)未使用過,是則刪除該資源;(A7)判斷緩存中是否還有未檢測的資源記錄,是則跳轉(zhuǎn)到(A5),否則跳轉(zhuǎn)到(A8);
(A8)判斷網(wǎng)格調(diào)度器是否要關(guān)閉,是則結(jié)束緩存定時檢測操作,否則跳轉(zhuǎn)到(A2)。
(2)當(dāng)請求到達(dá)網(wǎng)格調(diào)度器時,將其放入網(wǎng)格調(diào)度器的請求隊列中;(3)從上述請求隊列中取出一個請求,并從該請求中提取可執(zhí)行任務(wù);(4)從緩存中選取與該任務(wù)所請求資源相匹配的資源集合R;(5)判斷該任務(wù)獲取的資源集合R是否為空,是則跳轉(zhuǎn)至步驟(6),否則跳轉(zhuǎn)至步驟(7);(6)根據(jù)任務(wù)所請求資源及緩存更新操作對緩存中的資源記錄信息進(jìn)行更新,然后返回步驟(4);緩存更新操作的具體過程如圖3所示,包括(B1)判斷緩存中是否有剩余空間,是則跳轉(zhuǎn)到(B5),否則跳轉(zhuǎn)到(B2);(B2)讀取緩存中未檢測的資源記錄信息;(B3)判斷該記錄信息所記錄資源是否在2t時間間隔內(nèi)未使用過,t的推薦值為120秒,是則刪除該資源;(B4)判斷緩存中是否還有未檢測的資源記錄,是則跳轉(zhuǎn)(B2),否則跳轉(zhuǎn)到(B5);(B5)訪問信息服務(wù)器,獲取任務(wù)所請求資源的同一類資源,將其加入到緩存中并計算最近響應(yīng)時間TR,返回網(wǎng)格任務(wù)調(diào)度方法。
(7)對獲得的資源集合R,根據(jù)資源記錄的最近響應(yīng)時間TR由小到大進(jìn)行排序,獲取排序后的資源集合中的排頭資源,即最近響應(yīng)時間TR最小的資源r,并將其作為候選資源;(8)根據(jù)候選資源r和資源檢測操作從資源集合R中選取最終選定資源rs;資源檢測操作的具體過程如圖4所示,包括(C1)判斷當(dāng)前候選資源r的資源利用權(quán)值 是否在權(quán)值變動范圍 之內(nèi),其中TVr為最近一次提交任務(wù)到資源r的相鄰提交時間間隔,TRr為最近一次資源r的響應(yīng)時間,RCr為等待資源r提供服務(wù)的任務(wù)個數(shù),是則將資源r作為最終選定資源rs并跳轉(zhuǎn)至(C6),否則跳轉(zhuǎn)到(C2);(C2)構(gòu)建未檢測隊列,將資源集合中除候選資源外的其他資源放入未檢測隊列;(C3)取未檢測隊列的隊首資源為待檢測資源i,并在未檢測隊列中刪除資源i;(C4)計算候選資源r與待檢資源i最近響應(yīng)時間差ΔTRri,候選資源r響應(yīng)時間波動差ΔTRjr,待檢資源i響應(yīng)時間波動差ΔTRji,如果(ΔTRri-ΔTRjr+ΔTRji)≤0,]]>即待檢資源i提交后的響應(yīng)時間小于候選資源r提交后的響應(yīng)時間,則跳轉(zhuǎn)到(C5),否則跳轉(zhuǎn)到(C3);(C5)判斷資源i的資源利用權(quán)值 是否在權(quán)值變動范圍 之內(nèi),其中TVi為最近一次提交任務(wù)到資源i的相鄰提交時間間隔,TRi為最近一次資源i的響應(yīng)時間,RCi為等待資源i提供服務(wù)的任務(wù)個數(shù),是則將資源i作為最終選定資源rs并跳轉(zhuǎn)至(C6),否則跳轉(zhuǎn)到(C3);(C6)將最終選定資源rs返回網(wǎng)格任務(wù)調(diào)度方法。
(9)將該任務(wù)提交給最終選定資源rs,資源提供服務(wù)的任務(wù)計數(shù)器RCrs加1;(10)資源處理完請求后返回到網(wǎng)格調(diào)度器,計算緩存中相應(yīng)資源的平均響應(yīng)時間ART,該資源提供服務(wù)的任務(wù)計數(shù)器RCrs減1,并更新資源最近響應(yīng)時間LRT及最近一次更新資源時間RUT;(11)判斷請求隊列是否仍有請求或者有新請求到來,是則返回步驟(2),直到網(wǎng)格調(diào)度器關(guān)閉。
實例為了驗證基于反饋機(jī)制的網(wǎng)格任務(wù)調(diào)度方法的有效性,我們在分布式仿真網(wǎng)格支撐平臺GCDSP上實現(xiàn)了FBGS,并同無FBGS的GCDSP進(jìn)行比較。本實驗共采用了12臺計算機(jī),,其性能指標(biāo)如表1,其中2臺分別作為調(diào)度服務(wù)器和信息服務(wù)器,剩余10臺作為網(wǎng)格服務(wù)的提供者。測試所使用的服務(wù)是之前已經(jīng)開發(fā)好的用于仿真物流運輸情況的網(wǎng)格服務(wù),包括Production服務(wù),Consumption服務(wù),Transport服務(wù),Manager服務(wù)和Viewer服務(wù)。我們在這10臺機(jī)器上都部署了這5種網(wǎng)格服務(wù)。由于10臺機(jī)器的性能不同,并且5種網(wǎng)格服務(wù)的處理時間也不相同,因此共形成了50種性能彼此不同的網(wǎng)格服務(wù)。
表1實驗機(jī)器性能列表
為了全面測試性能,我們共進(jìn)行了四次實驗。四次實驗中提交給調(diào)度器進(jìn)行處理的請求數(shù)分別為50,100,200和400。測試結(jié)果如表2所示,其中性能提升比的計算公式為
與GCDSP默認(rèn)的網(wǎng)格任務(wù)調(diào)度器相比,采用FBGS的網(wǎng)格任務(wù)調(diào)度器性能更高,并且這種趨勢隨著提交給調(diào)度器進(jìn)行處理的請求數(shù)的增加而更顯突出。
表2總的調(diào)度性能比較
權(quán)利要求
1.一種基于反饋機(jī)制的網(wǎng)格任務(wù)調(diào)度方法,其步驟包括(1)網(wǎng)格調(diào)度器設(shè)置本地緩存,并利用緩存定時檢測操作清理緩存中長期不用的資源記錄信息;(2)當(dāng)請求到達(dá)網(wǎng)格調(diào)度器時,將其放入網(wǎng)格調(diào)度器的請求隊列中;(3)從上述請求隊列中取出一個請求,并從該請求中提取可執(zhí)行任務(wù);(4)從緩存中選取與該任務(wù)所請求資源相匹配的資源集合R;(5)判斷該任務(wù)獲取的資源集合R是否為空,是則跳轉(zhuǎn)至步驟(6),否則跳轉(zhuǎn)至步驟(7);(6)根據(jù)任務(wù)所請求資源及緩存更新操作對緩存中的資源記錄信息進(jìn)行更新,然后返回步驟(4);(7)對獲得的資源集合R,根據(jù)資源記錄的最近響應(yīng)時間TR由小到大進(jìn)行排序,獲取排序后的資源集合中的排頭資源,即最近響應(yīng)時間TR最小的資源r,并將其作為候選資源;(8)根據(jù)候選資源r,按照下述過程從資源集合R中選取最優(yōu)的資源作最終選定資源rs(C1)判斷當(dāng)前候選資源r的資源利用權(quán)值 是否在權(quán)值變動范圍 之內(nèi),其中σ‾r=TR‾rTV‾r-1]]>,TVr為最近一次提交任務(wù)到資源r的相鄰提交時間間隔,TRr為最近一次資源r的響應(yīng)時間,RCr為等待資源r提供服務(wù)的任務(wù)個數(shù),是則將資源r作為最終選定資源rs并跳轉(zhuǎn)至(C6),否則跳轉(zhuǎn)到(C2);(C2)構(gòu)建未檢測隊列,將資源集合中除候選資源外的其他資源放入未檢測隊列;(C3)取未檢測隊列的隊首資源為待檢測資源i,并在未檢測隊列中刪除資源i;(C4)計算候選資源r與待檢資源i最近響應(yīng)時間差ΔTRri,候選資源r響應(yīng)時間波動差ΔTRjr,待檢資源i響應(yīng)時間波動差ΔTRji,如果(ΔTRri-ΔTRjr+ΔTRji)≤0,]]>即待檢資源i提交后的響應(yīng)時間小于候選資源r提交后的響應(yīng)時間,則跳轉(zhuǎn)到(C5),否則跳轉(zhuǎn)到(C3);(C5)判斷資源i的資源利用權(quán)值 是否在權(quán)值變動范圍 之內(nèi),其中σ‾i=TR‾iTV‾i-1,]]>TVi為最近一次提交任務(wù)到資源i的相鄰提交時間間隔,TRi為最近一次資源i的響應(yīng)時間,RCi為等待資源i提供服務(wù)的任務(wù)個數(shù),是則將資源i作為最終選定資源rs并跳轉(zhuǎn)至(C6),否則跳轉(zhuǎn)到(C3);(C6)將最終選定資源rs返回網(wǎng)格任務(wù)調(diào)度方法;(9)將該任務(wù)提交給最終選定資源rs,資源提供服務(wù)的任務(wù)計數(shù)器RCrs加1;(10)資源處理完請求后返回到網(wǎng)格調(diào)度器,計算緩存中相應(yīng)資源的平均響應(yīng)時間ART,該資源提供服務(wù)的任務(wù)計數(shù)器RCrs減1,并更新資源最近響應(yīng)時間LRT及最近一次更新資源時間RUT;(11)判斷請求隊列是否仍有請求或者有新請求到來,是則返回步驟(2),直到網(wǎng)格調(diào)度器關(guān)閉。
2.根據(jù)權(quán)利要求1所述的調(diào)度方法,其特征在于所述步驟(1)采用下述步驟進(jìn)行定時檢測(A1)設(shè)置計時器中斷時間間隔t;(A2)計時器計時;(A3)判斷計時器是否到時,是則跳轉(zhuǎn)到(A4),否則跳轉(zhuǎn)到(A2);(A4)判斷緩存是否有剩余空間,是則跳轉(zhuǎn)到(A2),否則跳轉(zhuǎn)到(A5);(A5)讀取緩存中未檢測的資源記錄信息;(A6)判斷該記錄信息所記錄資源是否在2t時間間隔內(nèi)未使用過,是則刪除該資源;(A7)判斷緩存中是否還有未檢測的資源記錄,是則跳轉(zhuǎn)到(A5),否則跳轉(zhuǎn)到(A8);(A8)判斷網(wǎng)格調(diào)度器是否要關(guān)閉,是則結(jié)束緩存定時檢測操作,否則跳轉(zhuǎn)到(A2)。
3.根據(jù)權(quán)利要求1所述的調(diào)度方法,其特征在于步驟(6)包括以下過程(B1)判斷緩存中是否有剩余空間,是則跳轉(zhuǎn)到(B5),否則跳轉(zhuǎn)到(B2);(B2)讀取緩存中未檢測的資源記錄信息;(B3)判斷該記錄信息所記錄資源是否在2t時間間隔內(nèi)未使用過,是則刪除該資源;(B4)判斷緩存中是否還有未檢測的資源記錄,是則跳轉(zhuǎn)(B2),否則跳轉(zhuǎn)到(B5);(B5)訪問信息服務(wù)器,獲取任務(wù)所請求資源的同一類資源,將其加入到緩存中并計算最近響應(yīng)時間TR,返回網(wǎng)格任務(wù)調(diào)度方法。
全文摘要
本發(fā)明公開了一種基于反饋機(jī)制的網(wǎng)格任務(wù)調(diào)度方法。該方法以網(wǎng)格調(diào)度器實際收集的資源狀態(tài)數(shù)據(jù)為依據(jù),利用資源節(jié)點處理任務(wù)的歷史數(shù)據(jù)來推斷資源節(jié)點的狀態(tài),從而實現(xiàn)對網(wǎng)格任務(wù)的調(diào)度。具體步驟為①開啟網(wǎng)格調(diào)度器,設(shè)置本地緩存;②從請求隊列中取一請求,并從該請求中提取可執(zhí)行任務(wù);③從緩存中選取與該任務(wù)相匹配的資源集合R;④在資源集合R中選取最優(yōu)資源;⑤將該任務(wù)提交給資源,并記錄提交時間;⑥返回步驟①。該方法不需要每隔一段時間采集資源的狀態(tài),具有相當(dāng)?shù)膶崟r性和準(zhǔn)確性。該方法不會對資源的性能產(chǎn)生額外影響,而且不會額外增加網(wǎng)絡(luò)通信負(fù)擔(dān)。同時,該方法減少了同信息服務(wù)交互所導(dǎo)致的網(wǎng)絡(luò)延遲,使得任務(wù)的響應(yīng)時間縮短。
文檔編號G06F9/50GK101013386SQ20071005149
公開日2007年8月8日 申請日期2007年2月6日 優(yōu)先權(quán)日2007年2月6日
發(fā)明者金海 , 袁平鵬, 曹文治, 侯東暉, 鄺坪, 何亨 申請人:華中科技大學(xué)