[發明專利]一種支持依賴關系管理的任務調度系統在審
| 申請號: | 201811130647.0 | 申請日: | 2018-09-27 |
| 公開(公告)號: | CN109375996A | 公開(公告)日: | 2019-02-22 |
| 發明(設計)人: | 張甄 | 申請(專利權)人: | 安徽省鼎眾金融信息咨詢服務有限公司 |
| 主分類號: | G06F9/48 | 分類號: | G06F9/48 |
| 代理公司: | 合肥律眾知識產權代理有限公司 34147 | 代理人: | 白凱園 |
| 地址: | 230000 安徽省合肥市包河經濟開發區*** | 國省代碼: | 安徽;34 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 任務調度系統 依賴關系管理 任務處理模塊 任務運行狀態 調度程序 管理模塊 任務調度 任務運行 任務狀態 維護模塊 運行結果 資源消耗 緊耦合 判定 檢查 成功 | ||
本發明公開了一種支持依賴關系管理的任務調度系統,包括任務維護模塊、任務依賴性確定模塊、任務運行狀態管理模塊、任務出發模塊和任務處理模塊。本發明無需由任務自身以緊耦合來檢查其依賴的任務的運行結果是否正常,調度程序直接基于任務狀態即可判定所依賴的任務是否執行成功,降低了任務運行的資源消耗,并提高了任務調度的效率和可靠性。
技術領域
本發明涉及任務調度管理技術領域,尤其涉及一種支持依賴關系管理的任務調度系統。
背景技術
目前在計算機系統中對任務的執行都是采用在某個具體的時間點上由調度服務器進行觸發調度以實現對任務的調度。該時間點往往是采用時間表達式來體現的,這些時間表達式可以表示某個具體的時間點,甚至可以精確到秒級對任務進行觸發調度。因此,這種觸發方式可以很好的實現在特定的某個時間點對任務進行觸發調度。然而,由于系統的業務復雜性,許多系統中的任務之間是存在緊密的相關性的。比如在一個業務目標的處理邏輯的處理邏輯非常復雜的情況下,系統中可能需要多個任務協作才能完成。
現有的調度系統并沒有對這種任務間的依賴關系管理提供很好的支持,基本只能由具體任務邏輯的開發人員在任務啟動后逐個檢查其依賴的所有任務是否完成,并在依賴任務未完成時循環檢查直到運行條件滿足。
這樣的模式會帶來許多問題:
例如,檢查依賴任務是否完成無固定的標準,需要按照相關任務的邏輯選定關鍵事件做為特征,耦合過于緊密;
任務長時間空轉,增大了系統處理程序崩潰和任務異常退出的復雜度;
依賴關系由各個任務分別管理,難以調整和管理等等。
此外任務長時間空轉可能導致在系統出現故障重新啟動后,可能有大量任務一部分在運行過程中停止,一部分在空轉過程中停止,此時要把系統恢復到重新啟動前的狀態也有非常大的困難。
為解決上述問題,提出一種支持依賴關系管理的任務調度系統。
發明內容
本發明的目的是為了解決現有技術中一組存在依賴關系的任務在調度過程中須由任務自身來實現緊耦合、邏輯不嚴格的依賴關系管理而帶來各種問題的缺點,而提出的一種支持依賴關系管理的任務調度系統。
為了實現上述目的,本發明采用了如下技術方案:
設計一種支持依賴關系管理的任務調度系統,其特征在于:包括任務維護模塊、任務依賴性確定模塊、任務運行狀態管理模塊、任務出發模塊和任務處理模塊;
所述任務維護模塊,用于創建一組任務并明確相互之間的依賴關系,或對已有的一組任務進行任務的增減或依賴關系變更操作;
所述任務依賴性確定模塊,用于根據任務依賴關系建立依賴關系圖,并根據任務依賴圖判斷給定任務是否有依賴的任務;
所述任務運行狀態管理模塊,用于跟蹤每個任務的運行狀態并持久化;
所述任務出發模塊,用于觸發任務,其首先檢索所有滿足觸發條件且為未運行狀態的任務,并通過任務依賴性確定模塊判定能夠觸發的任務,并逐個觸發;
所述任務處理模塊,用于在任務觸發后,啟動相應的任務處理程序,并將其納入運行狀態管理。
本發明還提供一種支持依賴關系管理任務調度系統的調度方法,包括如下步驟:
步驟10:在一組任務被創建后,利用支持依賴關系管理的任務調度系統先為該任務及其所有具有依賴關系的其他所有任務創建狀態跟蹤記錄并持久化;
步驟20:調度程序根據步驟10所記錄的數據判定是否存在已滿足觸發條件且處于未運行狀態的任務;
步驟30:檢查是否無依賴任務;若無,進入步驟60,若有進入步驟40;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于安徽省鼎眾金融信息咨詢服務有限公司,未經安徽省鼎眾金融信息咨詢服務有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811130647.0/2.html,轉載請聲明來源鉆瓜專利網。





