欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種控制任務(wù)調(diào)度的方法和裝置與流程

文檔序號:11774215閱讀:239來源:國知局
一種控制任務(wù)調(diào)度的方法和裝置與流程

本發(fā)明實施例涉及但不限于軟件技術(shù),尤指一種控制任務(wù)調(diào)度的方法和裝置。



背景技術(shù):

在云海icos(一款結(jié)合openstack而開發(fā)的產(chǎn)品,其中,openstack是一個由美國國家航空航天局(nasa)和全球三大云計算中心之一的rackspace合作研發(fā)并發(fā)起的,以阿帕奇(apache)許可證授權(quán)的自由軟件和開放源代碼項目)系統(tǒng)中,會碰到大量的任務(wù)調(diào)度。在數(shù)據(jù)時代,需要處理的任務(wù)越來越多,如何在任務(wù)調(diào)度中,快速、有效的完成對任務(wù)的處理,以及如何在有限的資源中,優(yōu)化調(diào)度方法,找到適合的調(diào)度方法,快速處理任務(wù),成為亟需解決的問題。



技術(shù)實現(xiàn)要素:

本申請?zhí)峁┝艘环N控制任務(wù)調(diào)度的方法和裝置,能夠提高處理任務(wù)的效率。

為了達到本申請目的,本申請?zhí)峁┝艘环N控制任務(wù)調(diào)度的方法,包括:

當(dāng)檢測到存在待處理任務(wù)時,獲取待處理任務(wù)的類型;

匹配與獲得的待處理任務(wù)的類型對應(yīng)的調(diào)度算法;

根據(jù)匹配出的調(diào)度算法對待處理任務(wù)進行處理。

可選地,所述匹配與獲得的待處理任務(wù)的類型對應(yīng)的調(diào)度算法的步驟包括:

判斷是否處理過所述類型的任務(wù);

當(dāng)判斷出未處理過所述類型的任務(wù)時,獲取預(yù)先為所述類型的任務(wù)分配的調(diào)度算法;將所述預(yù)先為所述類型的任務(wù)分配的調(diào)度算法作為所述與獲得的待處理任務(wù)的類型對應(yīng)的調(diào)度算法;

當(dāng)判斷出已處理過所述類型的任務(wù)時,獲取已存儲的與所述類型的任務(wù)對應(yīng)的調(diào)度算法;將所述已存儲的與所述類型的任務(wù)對應(yīng)的調(diào)度算法作為所述與獲得的待處理任務(wù)的類型對應(yīng)的調(diào)度算法。

可選地,當(dāng)判斷出未處理過所述類型的任務(wù)時,所述根據(jù)匹配出的調(diào)度算法對待處理任務(wù)進行處理的步驟包括:

獲取所述類型的待處理任務(wù)的總項數(shù);

根據(jù)匹配出的調(diào)度算法對預(yù)設(shè)項數(shù)的所述類型的待處理任務(wù)進行處理;

獲取根據(jù)所述匹配出的調(diào)度算法對所述預(yù)設(shè)項數(shù)的所述類型的待處理任務(wù)進行處理的第一處理時間;

采用模擬器算法獲取根據(jù)除所述匹配出的調(diào)度算法之外的其它調(diào)度算法對所述預(yù)設(shè)項數(shù)的所述類型的待處理任務(wù)進行處理的第二處理時間;

獲取所述第一處理時間和所述第二處理時間中最小處理時間;

根據(jù)所述最小處理時間對應(yīng)的調(diào)度算法對除所述預(yù)設(shè)項數(shù)的所述類型的待處理任務(wù)之外的所述類型的待處理任務(wù)進行處理;

所述預(yù)設(shè)項數(shù)小于所述總項數(shù)。

可選地,在所述根據(jù)所述最小處理時間對應(yīng)的調(diào)度算法對除所述預(yù)設(shè)項數(shù)的所述類型的待處理任務(wù)之外的所述類型的待處理任務(wù)進行處理的步驟之后,該方法還包括:

計算所述最小處理時間與所述預(yù)設(shè)項數(shù)之間的商值;

將計算出的商值作為處理所述類型的待處理任務(wù)的第一執(zhí)行時間;

將所述最小處理時間對應(yīng)的調(diào)度算法、所述第一執(zhí)行時間以及所述類型對應(yīng)存儲。

可選地,當(dāng)判斷出已處理過所述類型的任務(wù)時,在所述根據(jù)匹配出的調(diào)度算法對待處理任務(wù)進行處理的步驟之后,該方法還包括:

記錄根據(jù)匹配出的調(diào)度算法對所述類型的待處理任務(wù)進行處理的第二執(zhí)行時間;

獲取已存儲的與所述匹配出的調(diào)度算法對應(yīng)的第一執(zhí)行時間;

計算所述第二執(zhí)行時間和所述已存儲的與所述匹配出的調(diào)度算法對應(yīng)的第一執(zhí)行時間之間的差值;

當(dāng)計算出的差值在預(yù)設(shè)范圍內(nèi)時,根據(jù)預(yù)先設(shè)置的權(quán)值計算算法、所述第二執(zhí)行時間和所述已存儲的與所述匹配出的調(diào)度算法對應(yīng)的第一執(zhí)行時間對所述已存儲的與所述匹配出的調(diào)度算法對應(yīng)的第一執(zhí)行時間進行更新。

本申請還提供了一種控制任務(wù)調(diào)度的裝置,包括:檢測模塊、獲取模塊、匹配模塊和處理模塊;其中,

檢測模塊,用于當(dāng)檢測到存在待處理任務(wù)時,通知獲取模塊;

獲取模塊,用于接收到來自檢測模塊的通知,獲取待處理任務(wù)的類型;

匹配模塊,用于匹配與獲得的待處理任務(wù)的類型對應(yīng)的調(diào)度算法;

處理模塊,用于根據(jù)匹配出的調(diào)度算法對待處理任務(wù)進行處理。

可選地,所述匹配模塊,具體用于包括:

判斷是否處理過所述類型的任務(wù);

當(dāng)判斷出未處理過所述類型的任務(wù)時,獲取預(yù)先為所述類型的任務(wù)分配的調(diào)度算法;將所述預(yù)先為所述類型的任務(wù)分配的調(diào)度算法作為所述與獲得的待處理任務(wù)的類型對應(yīng)的調(diào)度算法;

當(dāng)判斷出已處理過所述類型的任務(wù)時,獲取已存儲的與所述類型的任務(wù)對應(yīng)的調(diào)度算法;將所述已存儲的與所述類型的任務(wù)對應(yīng)的調(diào)度算法作為所述與獲得的待處理任務(wù)的類型對應(yīng)的調(diào)度算法。

可選地,所述匹配模塊,還用于當(dāng)判斷出未處理過所述類型的任務(wù)時,向所述處理模塊發(fā)送第一通知;此時,

所述處理模塊,具體用于:

接收到來自所述匹配模塊發(fā)送的所述第一通知,獲取所述類型的待處理任務(wù)的總項數(shù);

根據(jù)匹配出的調(diào)度算法對預(yù)設(shè)項數(shù)的所述類型的待處理任務(wù)進行處理;

獲取根據(jù)所述匹配出的調(diào)度算法對所述預(yù)設(shè)項數(shù)的所述類型的待處理任務(wù)進行處理的第一處理時間;

采用模擬器算法獲取根據(jù)除所述匹配出的調(diào)度算法之外的其它調(diào)度算法對所述預(yù)設(shè)項數(shù)的所述類型的待處理任務(wù)進行處理的第二處理時間;

獲取所述第一處理時間和所述第二處理時間中最小處理時間;

根據(jù)所述最小處理時間對應(yīng)的調(diào)度算法對除所述預(yù)設(shè)項數(shù)的所述類型的待處理任務(wù)之外的所述類型的待處理任務(wù)進行處理;

所述預(yù)設(shè)項數(shù)小于所述總項數(shù)。

可選地,所述處理模塊,還用于:

在所述根據(jù)所述最小處理時間對應(yīng)的調(diào)度算法對除所述預(yù)設(shè)項數(shù)的所述類型的待處理任務(wù)之外的所述類型的待處理任務(wù)進行處理之后,計算所述最小處理時間與所述預(yù)設(shè)項數(shù)之間的商值;

將計算出的商值作為處理所述類型的待處理任務(wù)的第一執(zhí)行時間;

將所述最小處理時間對應(yīng)的調(diào)度算法、所述第一執(zhí)行時間以及所述類型對應(yīng)存儲。

可選地,所述匹配模塊,還用于當(dāng)判斷出已處理過所述類型的任務(wù)時,向所述處理模塊發(fā)送第二通知;相應(yīng)地,

所述處理模塊,還用于接收到來自所述匹配模塊發(fā)送的所述第二通知,在所述根據(jù)匹配出的調(diào)度算法對待處理任務(wù)進行處理之后,記錄根據(jù)匹配出的調(diào)度算法對所述類型的待處理任務(wù)進行處理的第二執(zhí)行時間;

獲取已存儲的與所述匹配出的調(diào)度算法對應(yīng)的第一執(zhí)行時間;

計算所述第二執(zhí)行時間和所述已存儲的與所述匹配出的調(diào)度算法對應(yīng)的第一執(zhí)行時間之間的差值;

當(dāng)計算出的差值在預(yù)設(shè)范圍內(nèi)時,根據(jù)預(yù)先設(shè)置的權(quán)值計算算法、所述第二執(zhí)行時間和所述已存儲的與所述匹配出的調(diào)度算法對應(yīng)的第一執(zhí)行時間對所述已存儲的與所述匹配出的調(diào)度算法對應(yīng)的第一執(zhí)行時間進行更新。

本發(fā)明實施例包括:當(dāng)檢測到存在待處理任務(wù)時,獲取待處理任務(wù)的類型;匹配與獲得的待處理任務(wù)的類型對應(yīng)的調(diào)度算法;根據(jù)匹配出的調(diào)度算法對待處理任務(wù)進行處理。本發(fā)明實施例中,由于匹配與任務(wù)的類型對應(yīng)的最優(yōu)調(diào)度算法,從而提高了處理任務(wù)的效率。

附圖說明

此處所說明的附圖用來提供對本發(fā)明的進一步理解,構(gòu)成本申請的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當(dāng)限定。在附圖中:

圖1為本發(fā)明實施例控制任務(wù)調(diào)度的方法的流程圖;

圖2為本發(fā)明實施例控制任務(wù)調(diào)度的裝置的結(jié)構(gòu)示意圖。

具體實施方式

為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚明白,下文中將結(jié)合附圖對本發(fā)明的實施例進行詳細說明。需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互任意組合。

圖1為本發(fā)明實施例控制任務(wù)調(diào)度的方法的流程圖,如圖1所示,包括:

步驟101:當(dāng)檢測到存在待處理任務(wù)時,獲取待處理任務(wù)的類型。

需要說明的是,如何獲取待處理任務(wù)的類型屬于本領(lǐng)域技術(shù)人員所熟知的慣用技術(shù)手段,例如,可以通過接口調(diào)用時獲取待處理任務(wù)的類型(因為在接口調(diào)用時會傳遞的部分關(guān)鍵參數(shù)值和任務(wù)的類型),此處不再一一贅述,并不用來限制本申請。

其中,獲得的待處理任務(wù)的類型包括一個或一個以上。

步驟102:匹配與獲得的待處理任務(wù)的類型對應(yīng)的調(diào)度算法。

其中,本發(fā)明實施例步驟102包括:

判斷是否處理過該類型的任務(wù);

當(dāng)判斷出未處理過該類型的任務(wù)時,獲取預(yù)先為該類型的任務(wù)分配的調(diào)度算法;將預(yù)先為該類型的任務(wù)分配的調(diào)度算法作為與獲得的待處理任務(wù)的類型對應(yīng)的調(diào)度算法;

當(dāng)判斷出已處理過該類型的任務(wù)時,獲取已存儲的與該類型的任務(wù)對應(yīng)的調(diào)度算法;將已存儲的與該類型的任務(wù)對應(yīng)的調(diào)度算法作為與獲得的待處理任務(wù)的類型對應(yīng)的調(diào)度算法。

其中,本發(fā)明實施例判斷是否處理過該類型的任務(wù)的步驟包括:

判斷預(yù)先創(chuàng)建文件或數(shù)據(jù)庫中是否存在該類型的記錄;

當(dāng)判斷出預(yù)先創(chuàng)建文件或數(shù)據(jù)庫中存在該類型的記錄時,判斷出已處理過該類型的任務(wù);

當(dāng)判斷出預(yù)先創(chuàng)建文件或數(shù)據(jù)庫中不存在該類型的記錄時,判斷出未處理過該類型的任務(wù)。

其中,本發(fā)明實施例存在該類型的記錄包括存儲有該類型。

步驟103:根據(jù)匹配出的調(diào)度算法對待處理任務(wù)進行處理。

其中,當(dāng)判斷出未處理過該類型的任務(wù)時,本發(fā)明實施例步驟103包括:

獲取該類型的待處理任務(wù)的總項數(shù);

根據(jù)匹配出的調(diào)度算法對預(yù)設(shè)項數(shù)的該類型的待處理任務(wù)進行處理;

獲取根據(jù)匹配出的調(diào)度算法對預(yù)設(shè)項數(shù)的該類型的待處理任務(wù)進行處理的第一處理時間;

采用模擬器算法獲取根據(jù)除匹配出的調(diào)度算法之外的其它調(diào)度算法對預(yù)設(shè)項數(shù)的該類型的待處理任務(wù)進行處理的第二處理時間;

獲取第一處理時間和第二處理時間中最小處理時間;

根據(jù)最小處理時間對應(yīng)的調(diào)度算法對除預(yù)設(shè)項數(shù)的該類型的待處理任務(wù)之外的類型的待處理任務(wù)進行處理;

其中,本發(fā)明實施例預(yù)設(shè)項數(shù)小于上述總項數(shù)。

其中,預(yù)設(shè)項數(shù)可以是預(yù)設(shè)比例和上述總項數(shù)的乘積。

例如,預(yù)設(shè)比例可以是30%,也可以是20%,也可以是50%等。

舉例說明,某一類型的待處理任務(wù)的總項數(shù)是1000,預(yù)設(shè)比例是30%時,則預(yù)設(shè)項數(shù)是300(1000×30%),則除預(yù)設(shè)項數(shù)的該類型的待處理任務(wù)之外的類型的待處理任務(wù)的項數(shù)則是700(10000-300)項;預(yù)設(shè)比例是20%時,則預(yù)設(shè)項數(shù)是200(1000×20%),則除預(yù)設(shè)項數(shù)的該類型的待處理任務(wù)之外的類型的待處理任務(wù)的項數(shù)則是800(10000-200)項;預(yù)設(shè)比例是45%時,則預(yù)設(shè)項數(shù)是450(1000×45%),則除預(yù)設(shè)項數(shù)的該類型的待處理任務(wù)之外的類型的待處理任務(wù)的項數(shù)則是550(10000-450)項。

可選地,在根據(jù)最小處理時間對應(yīng)的調(diào)度算法對除預(yù)設(shè)項數(shù)的該類型的待處理任務(wù)之外的該類型的待處理任務(wù)進行處理的步驟之后,本發(fā)明實施例方法還包括:

計算最小處理時間與預(yù)設(shè)項數(shù)之間的商值;

將計算出的商值作為處理該類型的待處理任務(wù)的第一執(zhí)行時間;

將最小處理時間對應(yīng)的調(diào)度算法、第一執(zhí)行時間以及該類型對應(yīng)存儲。

需要說明的是,本發(fā)明實施例第一處理時間和第二處理時間是指處理多個同一類型的任務(wù)的總時間,第一執(zhí)行時間和第二執(zhí)行時間是指處理一個任務(wù)的最短時間(是指在最短的時間內(nèi)完成這個任務(wù)的處理時間,這個處理時間是指任務(wù)到達、等待執(zhí)行、開始執(zhí)行、執(zhí)行結(jié)束需要的時間之和)。

可選地,將最小處理時間對應(yīng)的調(diào)度算法、第一執(zhí)行時間以及該類型對應(yīng)存儲在預(yù)先創(chuàng)建的文件或數(shù)據(jù)庫中。

可選地,當(dāng)判斷出已處理過該類型的任務(wù)時,在根據(jù)匹配出的調(diào)度算法對待處理任務(wù)進行處理的步驟之后,本發(fā)明實施例方法還包括:

記錄根據(jù)匹配出的調(diào)度算法對該類型的待處理任務(wù)進行處理的第二執(zhí)行時間;

獲取已存儲的與匹配出的調(diào)度算法對應(yīng)的第一執(zhí)行時間;

計算第二執(zhí)行時間和已存儲的與匹配出的調(diào)度算法對應(yīng)的第一執(zhí)行時間之間的差值;

當(dāng)計算出的差值在預(yù)設(shè)范圍內(nèi)時,根據(jù)預(yù)先設(shè)置的權(quán)值計算算法、第二執(zhí)行時間和已存儲的與匹配出的調(diào)度算法對應(yīng)的第一執(zhí)行時間對已存儲的與匹配出的調(diào)度算法對應(yīng)的第一執(zhí)行時間進行更新。

需要說明的是,如何根據(jù)預(yù)先設(shè)置的權(quán)值計算算法、第二執(zhí)行時間和已存儲的與匹配出的調(diào)度算法對應(yīng)的第一執(zhí)行時間對已存儲的與匹配出的調(diào)度算法對應(yīng)的第一執(zhí)行時間進行更新,屬于本領(lǐng)域技術(shù)人員所熟知的慣用技術(shù)手段(例如,第二執(zhí)行時間是2秒(s),已存儲的與匹配出的調(diào)度算法對應(yīng)的第一執(zhí)行時間是2.5s,利用平均數(shù)的方法計算出2s和2.5s的平均時間是2.25s作為新的與匹配出的調(diào)度算法對應(yīng)的第一執(zhí)行時間,已存儲的與匹配出的調(diào)度算法對應(yīng)的第一執(zhí)行時間,即將2.5s替換為2.25s,在本申請中,可以不僅僅采用這種平均數(shù)的方法,可以利用函數(shù)曲線、微積分計算出新的與匹配出的調(diào)度算法對應(yīng)的第一執(zhí)行時間),在此不再贅述,并不用來限制本申請。

可選地,當(dāng)計算出的差值在不預(yù)設(shè)范圍內(nèi)時,本發(fā)明實施例方法還包括:

獲取已存儲的除與匹配出的調(diào)度算法對應(yīng)的第一執(zhí)行時間之外的其它第一執(zhí)行時間;

分別計算獲得的其它第一執(zhí)行時間與第二執(zhí)行時間之間的差值;

判斷計算出的差值中是否存在在預(yù)設(shè)范圍內(nèi)的差值;

當(dāng)判斷出計算出的差值中存在在預(yù)設(shè)范圍內(nèi)的差值時,獲取該差值對應(yīng)的調(diào)度算法并標(biāo)記匹配出的調(diào)度算法對應(yīng)的類型;

當(dāng)檢測到匹配出的調(diào)度算法對應(yīng)的類型的任務(wù)到來時,根據(jù)該差值對應(yīng)的調(diào)度算法對匹配出的調(diào)度算法對應(yīng)的類型的任務(wù)進行處理;

記錄根據(jù)該差值對應(yīng)的調(diào)度算法對匹配出的調(diào)度算法對應(yīng)的類型的任務(wù)進行處理的第三執(zhí)行時間;

計算第三執(zhí)行時間和該差值對應(yīng)的調(diào)度算法對應(yīng)的第一執(zhí)行時間之間的差值;

當(dāng)計算出的第三執(zhí)行時間和該差值對應(yīng)的調(diào)度算法對應(yīng)的第一執(zhí)行時間之間的差值在預(yù)設(shè)范圍內(nèi)時,根據(jù)預(yù)先設(shè)置的權(quán)值計算算法、第三執(zhí)行時間和該差值對應(yīng)的調(diào)度算法對應(yīng)的第一執(zhí)行時間對該差值對應(yīng)的調(diào)度算法對應(yīng)的第一執(zhí)行時間進行更新。

需要說明的是,如何根據(jù)預(yù)先設(shè)置的權(quán)值計算算法、第三執(zhí)行時間和該差值對應(yīng)的調(diào)度算法對應(yīng)的第一執(zhí)行時間對該差值對應(yīng)的調(diào)度算法對應(yīng)的第一執(zhí)行時間進行更新,屬于本領(lǐng)域技術(shù)人員所熟知的慣用技術(shù)手段,此處不再贅述,并不用來限制本申請。

可選地,當(dāng)判斷計算出的差值中不存在在預(yù)設(shè)范圍內(nèi)的差值時,本發(fā)明實施例方法還包括:

將待處理任務(wù)的類型作為一個新的類型,將記錄的根據(jù)匹配出的調(diào)度算法對該類型的待處理任務(wù)進行處理的第二執(zhí)行時間作為與待處理任務(wù)的類型對應(yīng)的第一執(zhí)行時間;

將與待處理任務(wù)的類型對應(yīng)的第一執(zhí)行時間、待處理任務(wù)的類型和匹配出的調(diào)度算法作為新的記錄對應(yīng)存儲在預(yù)先創(chuàng)建的文件或數(shù)據(jù)庫中。

舉例說明,通過上述方法的處理,當(dāng)有了各種各樣的任務(wù)分析數(shù)據(jù),產(chǎn)生了一定量的任務(wù)數(shù)據(jù)模板(對應(yīng)存儲的類型、第一執(zhí)行時間和調(diào)度算法)之后,當(dāng)有任務(wù)x(類型為x的任務(wù))到來的時候,會先比對模板中有無類似任務(wù),如果存在類似任務(wù)m(類型為m的任務(wù)),則按m任務(wù)的處理方式(調(diào)度算法)去處理任務(wù)x,當(dāng)處理完任務(wù)x之后,獲取任務(wù)x執(zhí)行所需時間timex(處理任務(wù)x的執(zhí)行時間),與已存儲的任務(wù)m的執(zhí)行所需時間timem比較,如果兩者時間之差在一定范圍(預(yù)設(shè)范圍)之內(nèi),根據(jù)預(yù)先設(shè)置的權(quán)值計算法,在timex與timem之間產(chǎn)生一個新的m任務(wù)的執(zhí)行時間值timemx,下次再有任務(wù)x到來時,就會利用任務(wù)m的方式處理任務(wù)x;假如timex與timem差較大,但是timex又與任務(wù)n(類型為n的任務(wù))的執(zhí)行時間timen相差較小,暫時在任務(wù)m上打上標(biāo)記(如何進行標(biāo)記屬于本領(lǐng)域技術(shù)人員所熟知的慣用技術(shù)手段,本申請不作具體限制,并不用來限制本申請),當(dāng)再有任務(wù)m到來時,利用任務(wù)n的方式處理任務(wù)m,獲取根據(jù)任務(wù)n的方式處理任務(wù)m的執(zhí)行時間timem1,如果timem1與timen之間的差值在一定范圍內(nèi),說明任務(wù)m也許可以利用任務(wù)n的調(diào)度方法,接下來經(jīng)過一定量的數(shù)據(jù)測試,發(fā)現(xiàn)timem1與timen之間的差值都在一定范圍之內(nèi),那么任務(wù)m可以利用任務(wù)n的調(diào)度方法,并且經(jīng)過預(yù)先設(shè)置的權(quán)值計算更新任務(wù)n的執(zhí)行時間timen;如果timem與模板中其他任務(wù)時間都不一樣,那么在模板中添加一個任務(wù)x的數(shù)據(jù)記錄(對應(yīng)存儲的類型、timex和調(diào)度算法),做模板數(shù)據(jù)與接下來到來的其他任務(wù)進行比較。

本發(fā)明實施方式中,通過匹配與獲得的待處理任務(wù)的類型對應(yīng)的調(diào)度算法,以及匹配與獲得的待處理任務(wù)的類型對應(yīng)的調(diào)度算法,由于匹配與任務(wù)的類型對應(yīng)的調(diào)度算法,從而提高了處理任務(wù)的效率。

舉例說明,假如有類型為a的任務(wù)1000個,每個類型為a的任務(wù)的執(zhí)行時間300毫秒(ms)-500ms左右,首先,每當(dāng)任務(wù)到來時,獲取該任務(wù)的類型,因為在預(yù)先創(chuàng)建的文件或數(shù)據(jù)庫中沒有任何的記錄,只能根據(jù)預(yù)先為該類型的任務(wù)分配的調(diào)度算法(如先來先服務(wù)算法、短作業(yè)優(yōu)先算法、時間片轉(zhuǎn)輪算法或優(yōu)先級算法等)處理該任務(wù),假如處理類型為a的任務(wù),預(yù)先分配的是先來先服務(wù)算法,那么按照先來先服務(wù)算法處理該任務(wù),假如處理了300個該任務(wù)之后,數(shù)據(jù)分析發(fā)現(xiàn)(采用模擬器算法)處理類型為a的任務(wù)根據(jù)先來先服務(wù)算法所需時間為1s左右(一個任務(wù)的執(zhí)行時間),而利用短作業(yè)優(yōu)先算法處理類型為a的認為需要800ms就能夠完成,比先來先服務(wù)算法效率更高,那么對剩余的700個類型為a的任務(wù),即使預(yù)先分配的是先來先服務(wù)算法,那么到任務(wù)調(diào)度處理時,也會利用短作業(yè)優(yōu)先算法去處理剩余的700個類型為a的任務(wù),這本身就是一個調(diào)度調(diào)優(yōu)過程;又如,類型為b的任務(wù)2000個(每個類型為b的任務(wù)的執(zhí)行時間為1秒(s)-2s左右)和類型為c的任務(wù)500個(每個類型為c的任務(wù)的執(zhí)行時間為4s-5s左右)同時來到任務(wù)調(diào)度器(同時被檢測到),此時預(yù)先分配的調(diào)度算法是優(yōu)先級算法,其中,類型為c的任務(wù)優(yōu)先級高,類型為b的優(yōu)先級低,此時,類型為c的任務(wù)需先執(zhí)行(處理),執(zhí)行完之后,再執(zhí)行類型為b的任務(wù),這就會造成類型為b的任務(wù)遲遲不能執(zhí)行,當(dāng)這600個任務(wù)執(zhí)行完之后,統(tǒng)計其總共花費時間,通過模擬時間片轉(zhuǎn)輪算法發(fā)現(xiàn),利用時間片轉(zhuǎn)輪算法,能夠節(jié)省大量時間處理時間,因此,通過本發(fā)明上述控制任務(wù)調(diào)度的方法,當(dāng)類型為a的任務(wù)到來時會利用短作業(yè)優(yōu)先算法,當(dāng)類型為b和類型為c的任務(wù)同時到來時,會利用時間片轉(zhuǎn)輪算法,從而實現(xiàn)了更快、更好的處理任務(wù)。

圖2為本發(fā)明實施例控制任務(wù)調(diào)度的裝置的結(jié)構(gòu)示意圖,如圖2所示,包括:檢測模塊、獲取模塊、匹配模塊和處理模塊。其中,

檢測模塊,用于當(dāng)檢測到存在待處理任務(wù)時,通知獲取模塊。

獲取模塊,用于接收到來自檢測模塊的通知,獲取待處理任務(wù)的類型。

匹配模塊,用于匹配與獲得的待處理任務(wù)的類型對應(yīng)的調(diào)度算法。

其中,本發(fā)明實施例匹配模塊,具體用于包括:

判斷是否處理過該類型的任務(wù);

當(dāng)判斷出未處理過該類型的任務(wù)時,獲取預(yù)先為該類型的任務(wù)分配的調(diào)度算法;將預(yù)先為該類型的任務(wù)分配的調(diào)度算法作為與獲得的待處理任務(wù)的類型對應(yīng)的調(diào)度算法;

當(dāng)判斷出已處理過該類型的任務(wù)時,獲取已存儲的與該類型的任務(wù)對應(yīng)的調(diào)度算法;將已存儲的與該類型的任務(wù)對應(yīng)的調(diào)度算法作為與獲得的待處理任務(wù)的類型對應(yīng)的調(diào)度算法。

處理模塊,用于根據(jù)匹配出的調(diào)度算法對待處理任務(wù)進行處理。

可選地,本發(fā)明實施例匹配模塊,還用于當(dāng)判斷出未處理過該類型的任務(wù)時,向處理模塊發(fā)送第一通知;此時,

本發(fā)明實施例處理模塊,具體用于:

接收到來自匹配模塊發(fā)送的第一通知,獲取該類型的待處理任務(wù)的總項數(shù);

根據(jù)匹配出的調(diào)度算法對預(yù)設(shè)項數(shù)的該類型的待處理任務(wù)進行處理;

獲取根據(jù)匹配出的調(diào)度算法對預(yù)設(shè)項數(shù)的該類型的待處理任務(wù)進行處理的第一處理時間;

采用模擬器算法獲取根據(jù)除匹配出的調(diào)度算法之外的其它調(diào)度算法對預(yù)設(shè)項數(shù)的該類型的待處理任務(wù)進行處理的第二處理時間;

獲取第一處理時間和第二處理時間中最小處理時間;

根據(jù)最小處理時間對應(yīng)的調(diào)度算法對除預(yù)設(shè)項數(shù)的該類型的待處理任務(wù)之外的該類型的待處理任務(wù)進行處理;

其中,本發(fā)明實施例預(yù)設(shè)項數(shù)小于上述總項數(shù)。

其中,預(yù)設(shè)項數(shù)可以是預(yù)設(shè)比例和上述總項數(shù)的乘積。

例如,預(yù)設(shè)比例可以是30%,也可以是20%,也可以是50%等。

舉例說明,某一類型的待處理任務(wù)的總項數(shù)是1000,預(yù)設(shè)比例是30%時,則預(yù)設(shè)項數(shù)是300(1000×30%),則除預(yù)設(shè)項數(shù)的該類型的待處理任務(wù)之外的類型的待處理任務(wù)的項數(shù)則是700(10000-300)項;預(yù)設(shè)比例是20%時,則預(yù)設(shè)項數(shù)是200(1000×20%),則除預(yù)設(shè)項數(shù)的該類型的待處理任務(wù)之外的類型的待處理任務(wù)的項數(shù)則是800(10000-200)項;預(yù)設(shè)比例是45%時,則預(yù)設(shè)項數(shù)是450(1000×45%),則除預(yù)設(shè)項數(shù)的該類型的待處理任務(wù)之外的類型的待處理任務(wù)的項數(shù)則是550(10000-450)項。

需要說明的是,本發(fā)明實施例第一處理時間和第二處理時間是指處理多個同一類型的任務(wù)的總時間,第一執(zhí)行時間和第二執(zhí)行時間是指處理一個任務(wù)的最短時間(是指在最短的時間內(nèi)完成這個任務(wù)的處理時間,這個處理時間是指任務(wù)到達、等待執(zhí)行、開始執(zhí)行、執(zhí)行結(jié)束需要的時間之和)。

可選地,本發(fā)明實施例處理模塊,還用于:

在根據(jù)最小處理時間對應(yīng)的調(diào)度算法對除預(yù)設(shè)項數(shù)的該類型的待處理任務(wù)之外的該類型的待處理任務(wù)進行處理之后,計算最小處理時間與預(yù)設(shè)項數(shù)之間的商值;

將計算出的商值作為處理該類型的待處理任務(wù)的第一執(zhí)行時間;

將最小處理時間對應(yīng)的調(diào)度算法、第一執(zhí)行時間以及該類型對應(yīng)存儲。

可選地,本發(fā)明實施例處理模塊將最小處理時間對應(yīng)的調(diào)度算法、第一執(zhí)行時間以及該類型對應(yīng)存儲在預(yù)先創(chuàng)建的文件或數(shù)據(jù)庫中。

可選地,本發(fā)明實施例匹配模塊,還用于當(dāng)判斷出已處理過該類型的任務(wù)時,向處理模塊發(fā)送第二通知;相應(yīng)地,

本發(fā)明實施例處理模塊,還用于接收到來自匹配模塊發(fā)送的第二通知,在根據(jù)匹配出的調(diào)度算法對待處理任務(wù)進行處理之后,記錄根據(jù)匹配出的調(diào)度算法對該類型的待處理任務(wù)進行處理的第二執(zhí)行時間;

獲取已存儲的與匹配出的調(diào)度算法對應(yīng)的第一執(zhí)行時間;

計算第二執(zhí)行時間和已存儲的與匹配出的調(diào)度算法對應(yīng)的第一執(zhí)行時間之間的差值;

當(dāng)計算出的差值在預(yù)設(shè)范圍內(nèi)時,根據(jù)預(yù)先設(shè)置的權(quán)值計算算法、第二執(zhí)行時間和已存儲的與匹配出的調(diào)度算法對應(yīng)的第一執(zhí)行時間對已存儲的與匹配出的調(diào)度算法對應(yīng)的第一執(zhí)行時間進行更新。

可選地,本發(fā)明實施例處理模塊,還用于當(dāng)計算出的差值在不預(yù)設(shè)范圍內(nèi)時,獲取已存儲的除與匹配出的調(diào)度算法對應(yīng)的第一執(zhí)行時間之外的其它第一執(zhí)行時間;

分別計算獲得的其它第一執(zhí)行時間與第二執(zhí)行時間之間的差值;

判斷計算出的差值中是否存在在預(yù)設(shè)范圍內(nèi)的差值;

當(dāng)判斷出計算出的差值中存在在預(yù)設(shè)范圍內(nèi)的差值時,獲取該差值對應(yīng)的調(diào)度算法并標(biāo)記匹配出的調(diào)度算法對應(yīng)的類型;

當(dāng)檢測到匹配出的調(diào)度算法對應(yīng)的類型的任務(wù)到來時,根據(jù)該差值對應(yīng)的調(diào)度算法對匹配出的調(diào)度算法對應(yīng)的類型的任務(wù)進行處理;

記錄根據(jù)該差值對應(yīng)的調(diào)度算法對匹配出的調(diào)度算法對應(yīng)的類型的任務(wù)進行處理的第三執(zhí)行時間;

計算第三執(zhí)行時間和該差值對應(yīng)的調(diào)度算法對應(yīng)的第一執(zhí)行時間之間的差值;

當(dāng)計算出的第三執(zhí)行時間和該差值對應(yīng)的調(diào)度算法對應(yīng)的第一執(zhí)行時間之間的差值在預(yù)設(shè)范圍內(nèi)時,根據(jù)預(yù)先設(shè)置的權(quán)值計算算法、第三執(zhí)行時間和該差值對應(yīng)的調(diào)度算法對應(yīng)的第一執(zhí)行時間對該差值對應(yīng)的調(diào)度算法對應(yīng)的第一執(zhí)行時間進行更新。

需要說明的是,如何根據(jù)預(yù)先設(shè)置的權(quán)值計算算法、第三執(zhí)行時間和該差值對應(yīng)的調(diào)度算法對應(yīng)的第一執(zhí)行時間對該差值對應(yīng)的調(diào)度算法對應(yīng)的第一執(zhí)行時間進行更新,屬于本領(lǐng)域技術(shù)人員所熟知的慣用技術(shù)手段,此處不再贅述,并不用來限制本申請。

可選地,本發(fā)明實施例處理模塊,還用于當(dāng)判斷計算出的差值中不存在在預(yù)設(shè)范圍內(nèi)的差值時,將待處理任務(wù)的類型作為一個新的類型,將記錄的根據(jù)匹配出的調(diào)度算法對該類型的待處理任務(wù)進行處理的第二執(zhí)行時間作為與待處理任務(wù)的類型對應(yīng)的第一執(zhí)行時間;

將與待處理任務(wù)的類型對應(yīng)的第一執(zhí)行時間、待處理任務(wù)的類型和匹配出的調(diào)度算法作為新的記錄對應(yīng)存儲在預(yù)先創(chuàng)建的文件或數(shù)據(jù)庫中。

本發(fā)明實施例還提供了一種控制任務(wù)調(diào)度的裝置,至少包括存儲器和處理器,其中,存儲器中存儲有以下可執(zhí)行指令:當(dāng)檢測到存在待處理任務(wù)時,獲取待處理任務(wù)的類型;匹配與獲得的待處理任務(wù)的類型對應(yīng)的調(diào)度算法;根據(jù)匹配出的調(diào)度算法對待處理任務(wù)進行處理;處理器執(zhí)行上述可執(zhí)行指令。

需要說明的是,在本文中,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者裝置不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者裝置所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括該要素的過程、方法、物品或者裝置中還存在另外的相同要素。

上述本發(fā)明實施例序號僅僅為了描述,不代表實施例的優(yōu)劣。

本領(lǐng)域普通技術(shù)人員可以理解上述方法中的全部或部分步驟可通過程序來指令相關(guān)硬件(例如處理器)完成,所述程序可以存儲于計算機可讀存儲介質(zhì)中,如只讀存儲器、磁盤或光盤等。可選地,上述實施例的全部或部分步驟也可以使用一個或多個集成電路來實現(xiàn)。相應(yīng)地,上述實施例中的各模塊/單元可以采用硬件的形式實現(xiàn),例如通過集成電路來實現(xiàn)其相應(yīng)功能,也可以采用軟件功能模塊的形式實現(xiàn),例如通過處理器執(zhí)行存儲于存儲器中的程序/指令來實現(xiàn)其相應(yīng)功能。本發(fā)明不限制于任何特定形式的硬件和軟件的結(jié)合。

以上僅為本申請的優(yōu)選實施例,并非因此限制本申請的專利范圍,凡是利用本申請說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本申請的專利保護范圍內(nèi)。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
桃源县| 清远市| 漳浦县| 迁西县| 青河县| 九寨沟县| 呼玛县| 鲁甸县| 恩平市| 进贤县| 屏东县| 中宁县| 金堂县| 外汇| 汝州市| 张家港市| 玉山县| 赤城县| 斗六市| 绵竹市| 同德县| 镇江市| 云阳县| 成安县| 内丘县| 无为县| 崇仁县| 新闻| 松潘县| 岳阳县| 尼勒克县| 宜章县| 长宁区| 乌拉特前旗| 大理市| 葫芦岛市| 肇源县| 治多县| 东乌珠穆沁旗| 石屏县| 雅安市|