System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術涉及數據管理領域,尤其涉及一種任務管理方法、裝置、電子設備及存儲介質。
技術介紹
1、隨著信息技術的發展,定時任務的執行越來越多地應用于各種系統中。目前,定時任務的執行要么是單一的串行,要么就是各自獨立的并行,缺乏對所有定時任務的統一編排及執行管控。然而,此種方法的任務管理準確性較低,往往導致資源占用較大的任務影響或者妨礙其他任務的執行,甚至影響到整個系統的正常工作,從而導致整個系統的響應遲緩甚至崩潰。因此,如何提供一種在定時任務管理中能夠提升任務管理準確性的方法,成為了一個亟待解決的問題。
技術實現思路
1、本專利技術實施例提供一種任務管理方法,旨在解決現有任務管理方法準確性較低的問題。當目標定時任務為未執行狀態時,進行執行之間的判斷,并在判斷通過后,更新任務狀態為待執行狀態,同時進行將待執行定時任務和待執行定時任務的任務狀態進行存儲,在滿足執行定時任務所需的執行資源時,執行定時任務。由于在管理過程中將任務狀態作為對定時任務進行管理的判斷依據,從而更為準確根據不同任務狀態執行相應的管理步驟,進而可以提升任務管理的準確性。
2、第一方面,本專利技術實施例提供一種任務管理方法,所述方法包括以下步驟:
3、從任務隊列中獲取目標定時任務以及所述目標定時任務的任務狀態,所述任務隊列中包括至少一個定時任務;
4、若所述目標定時任務的任務狀態為未執行狀態,則判斷是否達到所述目標定時任務的執行時間;
5、若達到所述目標定時任務的執行時間,
6、當存在滿足所述待執行定時任務所需的執行資源時,將所述待執行定時任務的任務狀態更新為執行中狀態,得到執行中定時任務;
7、為所述執行中定時任務分配執行線程,并通過所述執行線程對所述執行中定時任務進行執行處理,得到任務處理結果。
8、可選地,在所述獲取任務隊列中的目標定時任務之前,所述方法還包括:
9、獲取第一任務源的第一定時任務和第二任務源的第二定時任務,所述第一定時任務的任務狀態為待執行狀態或執行中狀態,所述第二定時任務的執行狀態為未執行狀態;
10、對所述第一定時任務和所述第二定時任務進行過濾處理,得到第三定時任務;
11、將所述第三定時任務,存儲至所述任務隊列中,所述第三定時任務包括所述目標定時任務。
12、可選地,所述對所述第一定時任務和所述第二定時任務進行過濾處理,得到第三定時任務,包括:
13、將每個所述第一定時任務的任務屬性逐一與每個所述第二定時任務的任務屬性進行比對,得到每個所述第一定時任務的比對結果;
14、當所述比對結果為不存在與對應的所述第一定時任務的任務屬性相同的所述第二定時任務時,刪除所述比對結果對應的所述第一定時任務;
15、當所述比對結果為存在與對應的所述第一定時任務的任務屬性相同的第二定時任務時,刪除所述比對結果對應的所述第二定時任務,保留所述比對結果對應的所述第一定時任務;
16、將未刪除的所述第一定時任務以及未刪除的所述第二定時任務確定為所述第三定時任務。
17、可選地,所述目標定時任務包括執行類型,所述執行類型包括固定間隔時間執行和指定時間執行,所述固定間隔時間對應第一執行策略,所述第一執行策略包括間隔時間,所述指定時間執行對應第二執行策略,所述第二執行策略包括在預設時間段內的執行時間點以及總執行次數,所述判斷是否達到所述目標定時任務的執行時間,包括:
18、獲取所述目標定時任務的執行記錄,所述執行記錄包括執行次數;
19、當所述目標定時任務的執行類型為所述固定間隔時間執行時,基于所述執行時間以及所述間隔時間,判斷是否達到所述目標定時任務的執行時間;
20、當所述目標定時任務的執行類型為所述指定時間執行時,計算所述總執行次數與所述執行次數的差值;
21、若所述執行次數小于所述總執行次數,則基于所述差值在所述執行時間點中匹配得到目標執行點,并將所述目標執行點與當前時間進行比對,確定是否達到所述目標定時任務的執行時間。
22、可選地,所述執行資源包括處理器利用率以及內存占用率,所述等待執行資源的分配,包括:
23、基于所述待執行定時任務的處理器利用率,計算得到執行所述待執行定時任務所需的處理器資源;
24、將所述處理器資源與空閑處理器資源進行比對,得到處理器占用比對結果;
25、獲取當前使用內存容量以及內存總容量,并基于所述當前使用內存容量以及所述內存總容量,確定所述待執行定時任務的內存占用閾值;
26、將所述待執行定時任務的內存占用率與所述內存占用閾值進行比對,得到內存占用比對結果;
27、基于所述處理器占用比對結果和所述內存占用比對結果,確定是否存在滿足所述待執行定時任務所需的執行資源。
28、可選地,所述執行中定時任務配置有超時時間,所述通過所述執行線程對所述執行中定時任務進行執行處理,得到任務處理結果,包括:
29、監測所述執行中定時任務的執行時間;
30、當所述執行中定時任務的執行時間大于或等于所述超時時間時,中止所述執行中定時任務的執行,并將所述執行中定時任務的任務狀態設為異常狀態,所述異常狀態對應的異常原因為執行超時;
31、當所述執行中定時任務在所述超時時間內執行完成時,將所述執行中定時任務的任務狀態設為成功狀態。
32、可選地,所述方法還包括:
33、若所述目標定時任務在存儲于所述任務隊列之前的任務狀態為執行中狀態或待執行狀態,則將所述目標定時任務確定為所述待執行定時任務,以等待執行資源的分配。
34、第二方面,本專利技術實施例還提供了一種任務管理裝置,所述任務管理裝置包括:
35、第一獲取模塊,用于從任務隊列中獲取目標定時任務以及所述目標定時任務的任務狀態,所述任務隊列中包括至少一個定時任務;
36、第一判斷模塊,用于若所述目標定時任務的任務狀態為未執行狀態,則判斷是否達到所述目標定時任務的執行時間;
37、第一更新模塊,用于若達到所述目標定時任務的執行時間,則將所述目標定時任務的任務狀態更新為待執行狀態,得到待執行定時任務,并將所述待執行定時任務以及所述待執行定時任務的任務狀態進行存儲,以等待執行資源的分配;
38、第二更新模塊,用于當存在滿足所述待執行定時任務所需的執行資源時,將所述待執行定時任務的任務狀態更新為執行中狀態,得到執行中定時任務;
39、第一執行模塊,用于為所述執行中定時任務分配執行線程,并通過所述執行線程對所述執行中定時任務進行執行處理,得到任務處理結果。
40、第三方面,本專利技術實施例提供一種電子設備,包括:本文檔來自技高網...
【技術保護點】
1.一種任務管理方法,其特征在于,所述方法包括以下步驟:
2.如權利要求1所述的任務管理方法,其特征在于,在所述獲取任務隊列中的目標定時任務之前,所述方法還包括:
3.如權利要求2所述的任務管理方法,其特征在于,所述對所述第一定時任務和所述第二定時任務進行過濾處理,得到第三定時任務,包括:
4.如權利要求1至3任一項所述的任務管理方法,其特征在于,所述目標定時任務包括執行類型,所述執行類型包括固定間隔時間執行和指定時間執行,所述固定間隔時間對應第一執行策略,所述第一執行策略包括間隔時間,所述指定時間執行對應第二執行策略,所述第二執行策略包括在預設時間段內的執行時間點以及總執行次數,所述判斷是否達到所述目標定時任務的執行時間,包括:
5.如權利要求1至3任一項所述的任務管理方法,其特征在于,所述執行資源包括處理器利用率以及內存占用率,所述等待執行資源的分配,包括:
6.如權利要求1所述的任務管理方法,其特征在于,所述執行中定時任務配置有超時時間,所述通過所述執行線程對所述執行中定時任務進行執行處理,得到任務處理結果,包括:
7.如權利要求1所述的任務管理方法,其特征在于,所述方法還包括:
8.一種任務管理裝置,其特征在于,所述任務管理裝置包括:
9.一種電子設備,其特征在于,包括:存儲器、處理器及存儲在所述存儲器上并可在所述處理器上運行的計算機程序,所述處理器執行所述計算機程序時實現如權利要求1至7中任一項所述的任務管理方法中的步驟。
10.一種計算機可讀存儲介質,其特征在于,所述計算機可讀存儲介質上存儲有計算機程序,所述計算機程序被處理器執行時實現如權利要求1至7中任一項所述的任務管理方法中的步驟。
...【技術特征摘要】
1.一種任務管理方法,其特征在于,所述方法包括以下步驟:
2.如權利要求1所述的任務管理方法,其特征在于,在所述獲取任務隊列中的目標定時任務之前,所述方法還包括:
3.如權利要求2所述的任務管理方法,其特征在于,所述對所述第一定時任務和所述第二定時任務進行過濾處理,得到第三定時任務,包括:
4.如權利要求1至3任一項所述的任務管理方法,其特征在于,所述目標定時任務包括執行類型,所述執行類型包括固定間隔時間執行和指定時間執行,所述固定間隔時間對應第一執行策略,所述第一執行策略包括間隔時間,所述指定時間執行對應第二執行策略,所述第二執行策略包括在預設時間段內的執行時間點以及總執行次數,所述判斷是否達到所述目標定時任務的執行時間,包括:
5.如權利要求1至3任一項所述的任務管理方法,其特征在于,所述執行資源包括處理...
【專利技術屬性】
技術研發人員:陳文龍,
申請(專利權)人:深圳云天勵飛技術股份有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。