本發明專利技術涉及一種任務調度方法,包括:獲取任務等待隊列;獲取任務等待隊列對應的資源最低配額和資源最高配額;根據所述資源最低配額和資源最高配額在所述任務等待隊列中選取任務;處理所述任務。此外,還包括一種任務調度裝置。上述任務調度方法及裝置可以保證任務得到處理,從而提高任務處理的效率。
【技術實現步驟摘要】
本專利技術涉及計算機
,特別是涉及一種任務調度方法及裝置。
技術介紹
傳統的計算機技術中,對于業務請求可以任務的形式將請求進行封裝,并對任務進行處理。例如,對于存儲設備,業務請求即I/O請求(input/output,輸入輸出請求),可將I/O請求封裝為I/O任務進行處理;對于計算設備,業務請求即計算請求,可將計算請求封裝為計算任務進行處理。由于計算機資源的限制,如CPU個數與計算能力、傳輸帶寬,多個任務往往不能同時處理,需要將任務以任務隊列的形式存儲,并對任務隊列中的任務逐一進行調度處理。傳統技術中,在將請求封裝成任務對象時,通常按照關鍵程度為任務設定優先級。在進行任務處理時,根據優先級在任務隊列中選擇關鍵程度較高的任務優先處理。然而,這種任務調度方式使得關鍵程度較低的任務需要等待較長時間才能得到處理的機會,從而降低了任務處理的效率
技術實現思路
·基于此,有必要提供一種能提高任務處理效率的任務調度方法。一種任務調度方法,包括獲取任務等待隊列;獲取任務等待隊列對應的資源最低配額和資源最高配額;根據所述資源最低配額和資源最高配額在所述任務等待隊列中選取任務;處理所述任務。在其中一個實施例中,所述方法還包括獲取任務,提取任務的優先級系數;根據所述任務的優先級系數將所述任務添加到對應的任務等待隊列中。在其中一個實施例中,所述方法還包括獲取配額分配請求,所述配額分配請求包括資源最低配額和資源最高配額;獲取所述配額分配請求對應的任務等待隊列;為所述對應的任務等待隊列設置資源最低配額和資源最高配額。在其中一個實施例中,所述根據所述資源最低配額和資源最高配額在所述任務等待隊列中選取任務的步驟為根據所述資源最低配額計算所述任務等待隊列對應的最小任務數比例,并根據所述資源最高配額計算所述任務等待隊列對應的最小任務數比例;根據所述最小任務數比例和所述最小任務數比例在所述任務等待隊列中選取任務。在其中一個實施例中,所述根據所述最小任務數比例和所述最小任務數比例在所述任務等待隊列中選取任務的步驟為根據所述最小任務數比例和所述最小任務數比例在所述任務等待隊列中以輪詢或先進先出或短任務優先的方式選取任務。此外,還有必要提供一種能提高任務處理效率的任務調度裝置。一種任務調度裝置,包括等待隊列獲取模塊,用于獲取任務等待隊列;資源配額獲取模塊,用于獲取任務等待隊列對應的資源最低配額和資源最高配額;任務選取模塊,用于根據所述資源最低配額和資源最高配額在所述任務等待隊列中選取任務;任務處理模塊,用于處理所述任務。在其中一個實施例中,所述裝置還包括任務添加模塊,用于獲取任務,提取任務的優先級系數,根據所述任務的優先級系數將所述任務添加到對應的任務等待隊列中。在其中一個實施例中,所述裝置還包括資源配額分配模塊,用于獲取配額分配請求,所述配額分配請求包括資源最低配額和資源最高配額,獲取所述配額分配請求對應的任務等待隊列,為所述對應的任務等待隊列設置資源最低配額和資源最高配額。 在其中一個實施例中,所述任務選取模塊還用于根據所述資源最低配額計算所述任務等待隊列對應的最小任務數比例,并根據所述資源最高配額計算所述任務等待隊列對應的最小任務數比例,根據所述最小任務數比例和所述最小任務數比例在所述任務等待隊列中選取任務。 在其中一個實施例中,所述任務選取模塊還用于根據所述最小任務數比例和所述最小任務數比例在所述任務等待隊列中以輪詢或先進先出或短任務優先的方式選取任務。上述任務調度方法及裝置通過獲取到的任務等待隊列對應的資源最低配額和資源最高配額來選取任務,為任務等待隊列中的任務提供了計算資源或帶寬資源的最低的資源使用保障和最高的資源占用限制,使得關鍵程度較高的任務可至少得到最低資源使用保障的資源來進行處理,而關鍵程度較低的任務也可同時在資源占用限制的范圍內獲得資源進行處理,從而提高了任務處理的效率。附圖說明圖I為一個實施例中任務調度方法的流程圖;圖2為一個實施例中任務調度裝置的結構示意圖;圖3為另一個實施例中任務調度裝置的結構示意圖。具體實施例方式在一個實施例中,如圖I所示,一種任務調度方法,包括步驟S102,獲取任務等待隊列。任務等待隊列即在任務處理的阻塞過程中用于緩存新來的任務的邏輯存儲單元。任務等待隊列可以有多個,且不同的任務等待隊列可以用于緩存關鍵程度不同的任務。在一個實施例中,可將請求封裝成任務,并根據請求的類別為任務設置優先級,然后將任務添加到相應額度任務等待隊列中,其過程為獲取任務,提取任務的優先級系數,根據任務的優先級系數將任務添加到對應的任務等待隊列中。 例如,網絡游戲服務器在接收到付費用戶和免費用戶的請求時,可將付費用戶的請求封裝成付費用戶任務,然后添加到付費任務等待隊列中;將免費用戶的請求封裝成免費用戶任務,然后添加到免費用戶任務等待隊列中。步驟S104,獲取任務等待隊列對應的資源最低配額和資源最高配額。資源配額可以是CPU占用率、帶寬占用率、緩存資源占用率等,可采用百分比表示。資源最低配額即任務等待隊列中的任務在處理過程中至少需要用到的資源配額,資源最高配額即任務等待隊列中的任務在處理過程中最多能用到的資源配額。不同的任務等待隊列可各自對應不同的資源最低配額和資源最高配額。例如,若在一個運行場景中,付費用戶任務等待隊列的資源最低配額為80%,資源最聞配額為100% ;免費用戶任務等待隊列的資源最低配額為0%,資源最聞配額為60%。則表示CPU至少需要花費80%的計算時間用于處理付費用戶任務,而最多只能花費60%的計算時間用于處理免費用戶任務。在一個實施例中,任務等待隊列對應的資源最低配額和資源最高配額可預先配置,其過程為獲取配額分配請求,配額分配請求包括資源最低配額和資源最高配額,獲取配額分配請求對應的任務等待隊列,為對應的任務等待隊列設置資源最低配額和資源最高配額。步驟S106,根據資源最低配額和資源最高配額在任務等待隊列中選取任務。在一個實施例中,根據資源最低配額和資源最高配額在任務等待隊列中選取任務的步驟為根據資源最低配額計算任務等待隊列對應的最小任務數比例,并根據資源最高配額計算任務等待隊列對應的最大任務數比例,根據最小任務數和最大任務數在任務等待隊列中選取任務。在本實施例中,已選取的任務形成任務執行序列,任務等待隊列對應的最小任務數比例即需要從該任務等待隊列選取的任務的數目占任務執行序列長度的比例;任務等待隊列對應的最大任務數比例即可從該任務等待隊列選取的任務的數目占任務執行序列長度的比例。例如,若付費用戶任務等待隊列的資源最低配額為80%,資源最高配額為100% ;免費用戶任務等待隊列的資源最低配額為10%,資源最高配額為60%。則需要從付費用戶任務等待隊列選取的任務的數目占任務執行序列長度的比例為O. 8,可以從付費用戶任務等待隊列選取的任務的數目占任務執行序列長度的比例為I ;需要從免費用戶任務等待隊列選取的任務的數目占任務執行序列長度的比例為O. 1,可以從付費用戶任務等待隊列選取的任務的數目占任務執行序列長度的比例為O. 6。也就是說從付費用戶任務等待隊列和免費用戶任務等待隊列中每選取10個任務,其中至少有8個是從付費用戶任務等待隊列中選出,有I個是從免費用戶任務隊列中選出,且從免費用戶任務隊本文檔來自技高網...
【技術保護點】
一種任務調度方法,包括:獲取任務等待隊列;獲取任務等待隊列對應的資源最低配額和資源最高配額;根據所述資源最低配額和資源最高配額在所述任務等待隊列中選取任務;處理所述任務。
【技術特征摘要】
【專利技術屬性】
技術研發人員:趙振陽,廖偉強,張睿,
申請(專利權)人:深信服網絡科技深圳有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。