[發明專利]基于quartz框架的任務執行方法及裝置無效
| 申請號: | 201210372142.1 | 申請日: | 2012-09-28 |
| 公開(公告)號: | CN102880473A | 公開(公告)日: | 2013-01-16 |
| 發明(設計)人: | 姜志偉;袁德志 | 申請(專利權)人: | 五八有限公司 |
| 主分類號: | G06F9/44 | 分類號: | G06F9/44 |
| 代理公司: | 工業和信息化部電子專利中心 11010 | 代理人: | 梁軍 |
| 地址: | 300457 天津市濱海新區第一大*** | 國省代碼: | 天津;12 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 quartz 框架 任務 執行 方法 裝置 | ||
技術領域
本發明涉及計算機技術領域,特別是涉及一種基于quartz框架的任務執行方法及裝置。
背景技術
在現有技術中,在電商系統業務開發時,需要大量的后臺定時操作任務,任務的調度不允許存在最終數據不一致情況。在現有的技術方案中,quartz框架在每個任務執行完成后,會將上下文內容存儲至數據庫中。
但是,在一次任務執行中,由于任務中的業務邏輯過多,有可能在任務執行到一半時,就因為外部或內部原因異常退出,導致出現了臟數據,違反了業務邏輯。
發明內容
本發明提供一種基于quartz框架的任務執行方法及裝置,以解決現有技術中在任務執行過程中異常退出導致數據錯誤的問題。
本發明提供一種基于quartz框架的任務執行方法,包括:步驟1,在確定quartz框架能夠啟動當前任務時,查看預先設置的數據庫中是否存在上一任務中某業務邏輯的數據狀態,如果存在,執行步驟2,否則,執行步驟3;步驟2,根據數據庫中存儲的數據狀態完成上一任務中的相應業務邏輯,執行步驟3;步驟3,將當前任務中所有業務邏輯的數據狀態存儲到數據庫中,并執行當前任務的業務邏輯,將執行成功的業務邏輯所對應的數據狀態從數據庫中刪除。
優選地,使用步驟1'替換步驟1,使用步驟3'替換步驟3:步驟1',在確定quartz框架能夠啟動當前任務時,查看預先設置的數據庫中是否存在未被標記為業務邏輯成功執行的上一任務中某業務邏輯的數據狀態,如果存在,執行步驟2,否則,執行步驟3';步驟3',將當前任務中所有業務邏輯的數據狀態存儲到數據庫中,并執行當前任務的業務邏輯,將執行成功的業務邏輯所對應的數據狀態標記為業務邏輯成功執行。
優選地,根據數據庫中存儲的數據狀態完成上一任務中的相應業務邏輯的方式包括:根據相應業務邏輯進行回滾、和/或重做。
優選地,上述方法還包括:如果執行當前任務的業務邏輯失敗,則退出當前任務,結束操作。
本發明還提供了一種基于quartz框架的任務執行裝置,包括:第一查看模塊,用于在確定quartz框架能夠啟動當前任務時,查看預先設置的數據庫中是否存在上一任務中某業務邏輯的數據狀態,如果存在,調用第一處理模塊,否則,調用第二處理模塊;第一處理模塊,用于根據數據庫中存儲的數據狀態完成上一任務中的相應業務邏輯,調用第二處理模塊;第二處理模塊,用于將當前任務中所有業務邏輯的數據狀態存儲到數據庫中,并執行當前任務的業務邏輯,將執行成功的業務邏輯所對應的數據狀態從數據庫中刪除。
優選地,使用第二查看模塊替換第一查看模塊,使用第三處理模塊替換第二處理模塊:第二查看模塊,用于在確定quartz框架能夠啟動當前任務時,查看預先設置的數據庫中是否存在未被標記為業務邏輯成功執行的上一任務中某業務邏輯的數據狀態,如果存在,調用第一處理模塊,否則,調用第三處理模塊;第三處理模塊,用于將當前任務中所有業務邏輯的數據狀態存儲到數據庫中,并執行當前任務的業務邏輯,將執行成功的業務邏輯所對應的數據狀態標記為業務邏輯成功執行。
優選地,第一處理模塊根據數據庫中存儲的數據狀態完成上一任務中的相應業務邏輯的方式包括:根據相應業務邏輯進行回滾、和/或重做。
優選地,第二處理模塊進一步用于:如果執行當前任務的業務邏輯失敗,則退出當前任務,結束操作。
本發明有益效果如下:
在不改變quartz本身存儲框架的基礎上,通過將任務執行過程中的業務邏輯數據狀態存儲到數據庫中,解決了現有技術中在任務執行過程中異常退出導致數據錯誤的問題,能夠保證任務調度中,任務數據不會出現不一致情況,對于任務不允許重復執行的任務數據,能夠保證其執行的唯一性。
上述說明僅是本發明技術方案的概述,為了能夠更清楚了解本發明的技術手段,而可依照說明書的內容予以實施,并且為了讓本發明的上述和其它目的、特征和優點能夠更明顯易懂,以下特舉本發明的具體實施方式。
附圖說明
通過閱讀下文優選實施方式的詳細描述,各種其他的優點和益處對于本領域普通技術人員將變得清楚明了。附圖僅用于示出優選實施方式的目的,而并不認為是對本發明的限制。而且在整個附圖中,用相同的參考符號表示相同的部件。在附圖中:
圖1是本發明實施例的基于quartz框架的任務執行方法的流程圖;
圖2是本發明實施例的確定quartz框架是否能夠啟動當前任務的示意圖;
圖3是本發明實施例的執行邏輯任務的詳細處理的流程圖;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于五八有限公司,未經五八有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210372142.1/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:應用推薦的實現方法、裝置和系統
- 下一篇:一種創建插件方法及裝置





