[發明專利]基于解耦任務數據模型的任務流調度方法與系統有效
| 申請號: | 202011081551.7 | 申請日: | 2020-10-12 |
| 公開(公告)號: | CN111930492B | 公開(公告)日: | 2021-01-19 |
| 發明(設計)人: | 殷慶榮;謝崢;高慶官;唐海均;王國偉 | 申請(專利權)人: | 南京賽寧信息技術有限公司 |
| 主分類號: | G06F9/48 | 分類號: | G06F9/48;G06F9/52 |
| 代理公司: | 南京蘇高專利商標事務所(普通合伙) 32204 | 代理人: | 孟紅梅 |
| 地址: | 211100 江*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 任務 數據模型 調度 方法 系統 | ||
1.一種基于解耦任務數據模型的任務流調度方法,其特征在于,對于參與任務流調度的單個任務數據模型定義驅動任務的通信協議、任務輸入輸出數據格式、后繼任務節點及其使用的協議處理器、任務冪等編號、任務在整個任務流中的編號、任務調度超時時間、任務失敗處理機制、任務輸出數據以及任務狀態查詢接口;對于任務流數據模型定義全局唯一的分布式鎖,以及任務流中第一個任務的初始化輸入數據;所述任務流調度方法包括:
步驟1:由同一任務流的所有調度節點周期性競爭該任務流的分布式鎖,成功競爭到分布式鎖的調度節點執行步驟2;未取得分布式鎖的調度節點結束本輪調度;
步驟2:獲取任務流已執行完成的最大任務編號,如果最大任務編號對應最后一個任務,標記任務流調度完成,釋放分布式鎖,結束;否則獲取最大任務編號對應的已完成任務A的信息,執行步驟3;
步驟3:獲取已完成任務A的后繼任務作為調度任務B,根據任務B的冪等編號查看其是否已被觸發,如果已觸發且調度時間未超時,說明任務B正在執行中,執行步驟4;否則執行步驟5;
步驟4:根據任務B定義中的任務狀態查詢接口查詢任務狀態,如果任務B已經執行完畢,獲取任務B的輸出結果并保存;標記任務B為完成狀態,結束本輪任務調度,釋放分布式鎖;
步驟5:如果任務B超時,重新觸發任務B執行;如果任務B未被觸發,觸發任務B執行; 觸發或重新觸發任務B時,加載通信協議框架,將任務A的輸出數據經協議處理器轉換后,作為觸發任務B的輸入數據;
步驟6:根據冪等編號,生成任務B調度記錄、設置或重置調度超時時間;
步驟7:根據任務B的反饋結果判斷任務B是否成功觸發,若成功觸發則結束本輪調度,釋放分布式鎖,否則執行步驟8;
步驟8:回滾步驟6中的調度記錄,釋放分布式鎖,并根據任務的失敗處理機制,決定是否需重新調度;如需重新調度則放棄本次調度,等待下一輪調度任務觸發;如不需要重新調度,設置任務流狀態為失敗,結束當前任務流調度。
2.根據權利要求1所述的基于解耦任務數據模型的任務流調度方法,其特征在于,所述任務流中的任務分布在異構網絡環境中。
3.根據權利要求1所述的基于解耦任務數據模型的任務流調度方法,其特征在于,任務流的調度節點和執行任務的計算節點間的驅動任務的通信協議為HTTP或TCP。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于南京賽寧信息技術有限公司,未經南京賽寧信息技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011081551.7/1.html,轉載請聲明來源鉆瓜專利網。





