1.一種云計算系統(tǒng)中隨機事件觸發(fā)的實時工作流調(diào)度方法,其特征在于,包括:
獲取虛擬化云中的虛擬機信息與工作流信息;
持續(xù)獲取虛擬機上的任務完成信息與新到達的工作流信息,并在所述虛擬機上以成本、資源利用率和調(diào)度方案波動性作為調(diào)度目標,對所述工作流任務進行動態(tài)調(diào)度;
完成全部任務并返回任務結(jié)果。
2.根據(jù)權利要求1所述的方法,其特征在于,所述虛擬機信息包括:啟用虛擬機的數(shù)量、每臺虛擬機的性能與價格、每兩臺虛擬機間的通信帶寬;所述工作流信息包括:該工作流的到達時間、截止時間與結(jié)構(gòu),其中,所述工作流結(jié)構(gòu)為表明該工作流中所有任務之間依賴關系的有向無環(huán)圖;所述工作流中每個任務的執(zhí)行時間符合獨立正態(tài)分布。
3.根據(jù)權利要求2所述的方法,其特征在于,持續(xù)獲取虛擬機上的任務完成信息,并在所述虛擬機上以成本、資源利用率和調(diào)度方案波動性作為調(diào)度目標,對所述工作流任務進行動態(tài)調(diào)度包括:
將未調(diào)度的任務置于任務池中等待處理;
持續(xù)獲取虛擬機上的任務完成信息,并根據(jù)所述虛擬機信息與所述任務信息,生成所述任務池中等待任務與所述虛擬機的建立映射關系;
根據(jù)所述虛擬機信息與虛擬機利用情況調(diào)整所述虛擬機的數(shù)量;
根據(jù)所述任務池中的任務與所述虛擬機之間的映射關系,將所述任務分配到對應的虛擬機中。
4.根據(jù)權利要求3所述的方法,其特征在于,根據(jù)所述虛擬機信息與所述任務信息,以虛擬機成本最小化、虛擬機資源利用率最大化、波動最小化為優(yōu)化目標,生成所述任務池中等待任務與所述虛擬機的映射關系,其中,根據(jù)所述虛擬機信息與所述任務信息將所述任務池中的任務與所述虛擬機建立映射關系包括:
完成任務的所述虛擬機若存在等待任務,則執(zhí)行其等待任務;
當所述被完成任務的后置任務的所有前驅(qū)任務已經(jīng)被映射到虛擬機上時,將所述被完成任務的后置任務標記為就緒任務并移出任務池;
選定所述工作流中的所述就緒任務按照期望最晚完成時間從小到大進行排序;
按照排序順序?qū)⑺兴鼍途w任務依次與虛擬機建立映射關系。
5.根據(jù)權利要求4所述的方法,其特征在于,所述就緒任務為不存在前驅(qū)任務的任務;或其所有前驅(qū)任務都已經(jīng)被映射到虛擬機,且至少一個前驅(qū)任務已經(jīng)被完成的任務。
6.根據(jù)權利要求4所述的方法,其特征在于,按照排序順序?qū)⑺兴鼍途w任務依次與虛擬機建立映射關系包括:判斷是否存在一臺虛擬機能在期望最晚完成時間之內(nèi)以最小期望費用完成被調(diào)度的任務,若是,則將所述任務與該虛擬機建立映射關系;若否,則租賃一臺能以最小期望費用在期望最晚完成時間之內(nèi)完成被調(diào)度的任務的新虛擬機,并將所述任務與該虛擬機建立映射關系。