在網格工作流中調度是一個非常重要的課題,它對網格工作流的執(zhí)行成功與否和效率的高低有著很大的影響,同時還受到網格工作流的資源管理情況的限制。它與一般的任務調度不同,在調度時考慮的因素比較多,比如為任務選擇一個最佳的資源;每個任務之間的時序或因果的約束條件,以及為了得到最終的執(zhí)行結果來協調任務的執(zhí)行等等。
文獻[1]給出了一種優(yōu)化調度模型,建立了資源提供方和用戶之間的“交易”,以滿足用戶用盡可能低的費用進行計算任務的最低要求;文獻[2]采用了一種基于Class Ad匹配的集中式方案,以形成資源調度器;文獻[3]提出了一個高度結構化的可擴展的調度方案。但該方案考慮的不夠周全,比如沒有從網格服務的角度去考慮。文獻[4-6]提出了一種基于遺傳算法的調度算法,改進了傳統(tǒng)的遺傳算法,該算法的收斂性好,同時也提高了資源選擇的效率,由于未考慮到網格的動態(tài)性,從而無法保障工作流的順利執(zhí)行。文獻[7]首先定義了應用程序優(yōu)先級,采用優(yōu)先級調度算法使得優(yōu)先級較高的應用程序能夠被優(yōu)先調度和運行,但它不能實時的獲取資源的信息,不能保證工作流執(zhí)行的健壯性。
本文提出了一種基于性能驅動的實時調度方法。調度器接收到用戶的請求后,通過實時獲取各資源結點的性能信息,為每個任務選擇一個最佳的服務資源,整體上縮短了工作流的執(zhí)行時間,提高了系統(tǒng)的吞吐量,在一定程度上保證了工作流執(zhí)行的健壯性。
針對服務網格環(huán)境中資源的動態(tài)性,該文提出了一種基于性能驅動的實時調度方法,經過實驗驗證,該調度方法一方面提高了工作流的執(zhí)行時間,減少了工作流在執(zhí)行時發(fā)生錯誤的次數;另一方面能夠充分發(fā)揮性能好的資源結點的作用,協調性能相對較差的結點來共同完成任務,在一定程度上提高了系統(tǒng)的整體吞吐量。下一步工作的重點和難點:從用戶的Qos以及系統(tǒng)多層次的Qos來考慮網格工作流調度,從而找到一種能夠保障工作流安全執(zhí)行的容錯機制。