[發明專利]一種異步任務處理方法及系統有效
| 申請號: | 202010731395.8 | 申請日: | 2020-07-27 |
| 公開(公告)號: | CN112000449B | 公開(公告)日: | 2023-03-31 |
| 發明(設計)人: | 季廣猛;谷凱凱 | 申請(專利權)人: | 新華三大數據技術有限公司 |
| 主分類號: | G06F9/48 | 分類號: | G06F9/48;G06F16/2453;G06F16/2458 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 450000 河南省鄭州市鄭州高*** | 國省代碼: | 河南;41 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 異步 任務 處理 方法 系統 | ||
1.一種異步任務處理方法,其特征在于,所述方法包括:
請求處理層接收應用層發送的任務創建請求,并創建任務;
請求處理層將任務加入緩沖層中的分布式流處理平臺中的任務隊列,并在緩沖層中的分布式搜索引擎中創建所述任務對應的任務狀態記錄;
任務處理層從所述任務隊列中提取任務并執行任務;
任務處理層負責更新所述分布式搜索引擎中所述任務的任務狀態記錄;
所述方法還包括:
為每個任務狀態分配一個版本號;
當緩沖層的分布式搜索引擎接收到更新任務狀態請求時,分布式搜索引擎先校驗所述更新任務狀態請求中攜帶的任務狀態版本號是否與所述任務狀態記錄中的任務狀態版本號一致,如果一致則更新任務狀態并根據任務狀態版本號的切換規則更新任務狀態版本號,否則拒絕更新任務狀態。
2.根據權利要求1所述的方法,其特征在于,
所述任務的任務狀態分為多個級別,每一級任務狀態具有相同的任務狀態版本號;
所述的任務狀態版本號的切換規則為:上一級任務狀態版本號只能向下一級任務狀態版本號切換。
3.根據權利要求1所述的方法,其特征在于,所述方法還包括:
所述請求處理層接收到應用層的任務狀態查詢請求時,從所述分布式搜索引擎中讀取所述任務的任務狀態記錄,并將查詢結果反饋給所述請求處理層。
4.根據權利要求1所述的方法,其特征在于,所述方法還包括:
當所述請求處理層接收到應用層的任務取消請求請求取消所述任務時,所述請求處理層指令所述分布式搜索引擎更新所述任務的任務狀態記錄為取消狀態;
當任務超時需要終止所述任務時,所述請求處理層指令所述任務處理層終止所述任務的執行,所述任務處理層還用于請求所述分布式搜索引擎更新所述任務的任務狀態記錄為處理失敗狀態。
5.一種異步任務處理系統,其特征在于,該系統包括:
應用層,用于基于業務需求發起任務創建請求以及查詢任務狀態請求;
請求處理層,用于響應應用層的任務創建請求并指令緩沖層創建任務,以及響應應用層的任務狀態查詢請求從緩沖層讀取任務狀態并反饋處理結果;
緩沖層,用于通過分布式流處理平臺的任務隊列緩存任務,以及通過分布式搜索引擎記錄任務狀態;
任務處理層,用于從緩沖層獲取任務并實際執行任務,并通過發送更新任務狀態請求指令緩沖層更新任務狀態;
每個任務狀態具有一個任務狀態版本號,所述緩沖層中的分布式搜索引擎為每個任務建立一個任務狀態記錄,任務狀態記錄中包含任務狀態版本號字段;
所述分布式搜索引擎接收到更新任務狀態請求時,先取出任務狀態記錄中記錄的第一任務狀態版本號,然后驗證更新任務狀態請求中攜帶的任務狀態版本號是否與所述第一任務狀態版本號一致,如果一致則更新任務狀態并根據任務狀態版本號的切換規則更新任務狀態版本號,否則拒絕更新任務狀態。
6.根據權利要求5所述的系統,其特征在于,所述請求處理層包括:
任務提交模塊,用于在接收到應用層的任務創建請求后創建相應的任務,并將任務封裝成分布式流處理平臺消息格式將任務發送到分布式流處理平臺,以將任務插入到分布式流處理平臺中的任務執行隊列當中;在將任務成功插入到分布式流處理平臺中的任務執行隊列中后,還用于通過創建任務狀態記錄消息指令分布式搜索引擎創建對應的任務狀態記錄;
任務查詢模塊,用于在接收到應用層發送的任務狀態查詢請求時通過向分布式搜索引擎發送查詢任務狀態消息從分布式搜索引擎查詢相應任務的任務狀態并將查詢結果反饋給應用層。
7.根據權利要求5所述的系統,其特征在于,所述請求處理層還包括:
任務取消模塊,用于接收到應用層的任務取消請求時,指令所述分布式搜索引擎更新所述任務的任務狀態記錄為取消狀態;
所述任務處理層,還用于在從所述分布式流處理平臺的任務隊列中取出任務時,指令所述分布式搜索引擎更新所述任務的任務狀態記錄為處理中狀態,若更新任務狀態失敗,則不執行所述任務。
8.根據權利要求5所述的系統,其特征在于,所述系統還包括:
超時處理模塊,用于在任務超時需要終止所述任務時,指令任務處理模塊終止所述任務的執行;
所述任務處理層,還用于在接收到終止任務執行的請求時,指令分布式搜索引擎更新所述任務的任務狀態記錄為處理失敗狀態。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于新華三大數據技術有限公司,未經新華三大數據技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010731395.8/1.html,轉載請聲明來源鉆瓜專利網。





