CN115470032A - 任务处理方法、装置、设备、介质及程序产品 - Google Patents

任务处理方法、装置、设备、介质及程序产品 Download PDF

Info

Publication number
CN115470032A
CN115470032A CN202211202198.2A CN202211202198A CN115470032A CN 115470032 A CN115470032 A CN 115470032A CN 202211202198 A CN202211202198 A CN 202211202198A CN 115470032 A CN115470032 A CN 115470032A
Authority
CN
China
Prior art keywords
task
unit
execution
executed
nth
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211202198.2A
Other languages
English (en)
Inventor
张丹
武广付
王宇飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Construction Bank Corp
CCB Finetech Co Ltd
Original Assignee
China Construction Bank Corp
CCB Finetech Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Construction Bank Corp, CCB Finetech Co Ltd filed Critical China Construction Bank Corp
Priority to CN202211202198.2A priority Critical patent/CN115470032A/zh
Publication of CN115470032A publication Critical patent/CN115470032A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0715Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a system implementing multitasking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/28Error detection; Error correction; Monitoring by checking the correct order of processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请公开了一种任务处理方法、装置、设备、介质及程序产品,该方法包括:获取待执行任务中各任务单元的任务执行信息;基于各所述任务单元的任务执行信息,控制所述多个任务单元依次执行,获取执行结果;在所述执行结果指示所述N个任务单元执行失败的情况下,针对所述第N个任务单元进行故障处理;在故障处理后重新执行所述第N个任务,在多个任务单元成功执行下得到待执行任务的处理结果。由此可以在单个任务单元出现故障的情况下,对单个业务单元进行故障处理,避免了业务处理过程中出现微小故障而导致整个业务需要重新执行,提高了任务执行的效率。

Description

任务处理方法、装置、设备、介质及程序产品
技术领域
本申请属于计算机技术领域,尤其涉及一种任务处理方法、装置、设备、介质及程序产品。
背景技术
现有技术中,通常是将需要执行的任务写入任务执行程序中并存储,任务执行程序对存储的任务进行查询,在查询到当前时刻需要执行的某一任务时,将读取该任务的存储地址,以驱动相应的程序执行该任务。
但是,目前的任务处理方法当任务执行过程中出现故障导致执行失败时,需要重新执行整个任务,操作繁琐,耗费时间长,任务执行效率低。
发明内容
本申请实施例提供一种任务处理方法、装置、设备、介质及程序产品,能够提高任务执行效率。
一方面,本申请实施例提供一种任务处理方法,方法包括:
获取待执行任务中各任务单元的任务执行信息,所述待执行任务包括多个任务单元;
基于所述各任务单元的任务执行信息,控制所述多个任务单元依次执行,获取执行结果;
在所述执行结果指示所述N个任务单元执行失败的情况下,针对所述第N个任务单元进行故障处理,所述第N个任务单元为所述多个任务单元中的任一任务单元,所述N为正整数。
在一些实施例中,所述针对所述第N个任务单元进行故障处理,并重新执行所述第N个任务,包括:
获取所述第N个任务单元的任务单元信息,所述任务单元信息用于指示所述第N个任务单元;
在历史故障数据库中查询与所述任务单元信息匹配的至少一项历史故障处理数据,不同所述历史故障数据用于针对任务单元的不同故障进行处理的数据;
通过所述至少一项历史故障处理数据对所述第N个任务单元进行至少一次故障处理,各次所述故障处理所采用的历史故障数据不同,
其中,在每次所述历史故障处理数据对所述第N个任务单元进行故障处理后,重新执行所述第N个任务。
在一些实施例中,所述通过所述至少一项历史故障处理数据对所述第N个任务单元进行至少一次故障处理,包括:
对所述至少一项历史故障处理数据按照时间顺序进行排序;
按照所述排序依次通过各所述故障处理数据对所述第N个任务单元进行故障处理;
在所述故障处理的次数达到预设次数的情况下,输出提示信息,所述提示信息用于提示用户在所述至少一项历史故障处理数据未进行故障处理的历史故障处理数据中选择目标历史故障数据;
在接收到所述用户基于所述提示信息选择所述目标历史故障数据的情况下,通过所述目标历史故障数据对所述第N个任务单元进行故障处理。
在一些实施例中,所述获取待执行任务中各任务单元的任务执行信息,包括:
从任务执行表中获取所述各任务单元的任务执行状态和任务执行时间;
在所述任务执行状态为待执行状态,且所述任务执行时间早于当前时间的情况下,从任务配置表中获取所述任务单元的任务配置参数,
其中,所述任务执行信息包括所述任务执行状态、任务执行时间和任务配置参数。
在一些实施例中,所述从任务执行表中获取各所述任务单元的任务执行状态和任务执行时间之后,还包括:
在所述任务执行状态不为待执行状态,和/或,所述任务执行时间晚于当前时间的情况下,接收在所述任务执行表中对所述任务单元的第一输入;
响应于所述第一输入,对所述任务执行表中与所述任务单元的信息进行修改,以使所述任务单元的任务执行状态为待执行状态以及所述任务执行时间早于当前时间。
在一些实施例中,所述获取待执行任务中各任务单元的任务执行信息之前,还包括:
在所述任务配置表和所述任务执行表中不存在所述多个任务单元中的第一任务单元的情况下,接收在所述任务配置表和所述任务执行表中对所述第一任务单元的第二输入;
响应于所述第二输入,在所述任务配置表中增加所述第一任务单元的任务配置参数,以及,在所述任务执行表中增加所述第一任务单元的任务执行状态和任务执行时间。
在一些实施例中,所述基于各所述任务单元的任务执行信息,控制所述多个任务单元依次执行,获取执行结果,包括:
针对每个任务单元,在所述任务单元的所述执行状态信息为待执行且所述任务执行时间小于当前时刻的情况下,根据所述任务单元的任务配置参数执行所述任务单元,得到各所述任务单元的执行结果。
在一些实施例中,所述方法还包括:
在所述第N个任务单元的执行结果指示所述N个任务单元执行成功的情况下,将所述任务执行表中所述第N个任务单元的执行状态更新为已执行;
在所述多个任务单元的执行状态为已执行的情况下,生成所述待执行任务的处理结果。
另一方面,本申请实施例提供了一种任务处理装置,装置包括:
第一获取模块,用于获取待执行任务中各任务单元的任务执行信息,所述待执行任务包括多个任务单元;
控制模块,用于基于各所述任务单元的任务执行信息,控制所述多个任务单元依次执行,获取执行结果;
处理模块,用于在所述执行结果指示所述N个任务单元执行失败的情况下,针对所述第N个任务单元进行故障处理,并重新执行所述第N个任务,所述第N个任务单元为所述多个任务单元中的任一任务单元,所述第N个任务单元为所述多个任务单元中的任一任务单元。
再一方面,本申请实施例提供了一种任务处理设备,设备包括:处理器以及存储有计算机程序指令的存储器;所述处理器执行所述计算机程序指令时实现如上述任务处理方法。
再一方面,本申请实施例提供了一种计算机存储介质,所述计算机可读存储介质上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现如上述所述的任务处理方法。
再一方面,本申请实施例提供了一种计算机程序产品,所述计算机程序产品中的指令由电子设备的处理器执行时,使得所述电子设备执行如上述任务处理方法。
本申请实施例的任务处理方法、装置、设备及计算机存储介质,获取待执行任务中各任务单元的任务执行信息;基于各所述任务单元的任务执行信息,控制所述多个任务单元依次执行,获取执行结果;在所述执行结果指示所述N个任务单元执行失败的情况下,针对所述第N个任务单元进行故障处理。通过将待执行任务中的多个任务单元的任务执行信息,控制多个任务单元依次执行,每个任务单元独立运行,由此可以在单个任务单元出现故障的情况下,可以对单个业务单元进行故障处理,避免了业务处理过程中出现微小故障而导致整个业务需要重新执行,提高了任务执行的效率。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单的介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一个实施例提供的任务处理方法的流程示意图;
图2是本申请另一个实施例提供的任务处理装置的结构示意图;
图3是本申请又一个实施例提供的任务处理设备的结构示意图。
具体实施方式
下面将详细描述本申请的各个方面的特征和示例性实施例,为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及具体实施例,对本申请进行进一步详细描述。应理解,此处所描述的具体实施例仅意在解释本申请,而不是限定本申请。对于本领域技术人员来说,本申请可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本申请的示例来提供对本申请更好的理解。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本申请技术方案中对数据的获取、存储、使用、处理等均符合国家法律法规的相关规定。
电子回单(Electronic receipt):银行电子回单是为需要了解网银交易明细、验证网银交易真伪以及获取交易凭证的企业客户提供其网银付款交易电子回单的查询、下载、打印(补打)以及验证功能。具有信息详细丰富、认证真实可靠以及使用方便快捷的特点:电子回单记载了企业网上付款交易的各种详细交易信息;电子回单加盖了银行电子回单专用章,并且标注了电子回单号和验证码,以确保电子回单的真实性和可认证性;电子回单提供7×24小时全天候账户电子回单查询功能,可以轻松完成各类交易的企业账务处理。
自动化(Automation):自动化是指机器设备、系统或过程(生产、管理过程)在没有人或较少人的直接参与下,按照人的要求,经过自动检测、信息处理、分析判断、操纵控制,实现预期的目标的过程。自动化技术广泛用于工业、农业、军事、科学研究、交通运输、商业、医疗、服务和家庭等方面。采用自动化技术不仅可以把人从繁重的体力劳动、部分脑力劳动以及恶劣、危险的工作环境中解放出来,而且能扩展人的器官功能,极大地提高劳动生产率,增强人类认识世界和改造世界的能力。
在大型软件系统开发中,常常需要为客户的特殊需求而定制化生成其需求的回单等,但在现有技术中,回单生成业务,通常是基于C语言的任务调度,实现前后任务的关联,A任务执行完毕,轮询程序扫描下一任务,自动执行对应程序。随着回单业务量急剧上升,在批处理加工过程中,出现了很多定制化的需求,比如对某一字段做特殊处理,或者需要对某一特定任务进行重跑。即,现有的回单批处理的调用,依赖原有C框架调用任务,只能固定调用,然后轮询执行后续任务,业务出现微小变动,也只能通过增加新任务来进行迭代,不利于敏捷开发。且业务只能全部重跑,不支持业务单元重跑。
进一步,现有的业务处理方法通常都是基于SpringBatch和Quartz实现自动执行任务。Spring-batch和Quartz本身是优秀的开源框架,但在大型软件项目开发中,直接使用者两个框架对于应用开发者而言较为复杂,而且Quartz本身不能良好地支持预约执行任务;Spring-batch设计的时候对作业定义较为复杂,且配置都定义在配置文件中,如果为每个自动任务应用都配置一个Job,新增和维护都会显得麻烦。
由此,现有技术中的回单生成业务处理方法,在批量处理个性化回单生成业务时存在效率低的问题,无法满足客户需求。因此,申请人提出基于数据库配置的自动任务实现回单生成任务的自动化执行,以解决上诉问题。
为了解决现有技术问题,本申请实施例提供了一种任务处理方法、装置、设备及计算机存储介质。下面首先对本申请实施例所提供的任务处理方法进行介绍。
图1示出了本申请一个实施例提供的任务处理方法的流程示意图。如图1所示,本申请实施例提供的任务处理方法包括以下步骤:S101至S103:
S101、获取待执行任务中第N个任务单元的任务执行信息.
其中,待执行任务包括多个任务单元。
S102、基于第N个任务单元的任务执行信息,控制多个任务单元依次执行,获取执行结果。
S103、在执行结果指示第N个任务单元执行失败的情况下,针对第N个任务单元进行故障处理,并重新执行所述第N个任务单元。
其中,第N个任务单元为多个任务单元中的任一任务单元,N为正整数。
本申请实施例的任务处理方法,获取待执行任务中各任务单元的任务执行信息;基于各所述任务单元的任务执行信息,控制所述多个任务单元依次执行,获取执行结果;在所述执行结果指示所述N个任务单元执行失败的情况下,针对所述第N个任务单元进行故障处理。通过将待执行任务中的多个任务单元的任务执行信息,控制多个任务单元依次执行,每个任务单元独立运行,由此可以在单个任务单元出现故障的情况下,可以对单个业务单元进行故障处理,避免了业务处理过程中出现微小故障而导致整个业务需要重新执行,提高了任务执行的效率。
在S101中,获取待执行任务中各任务单元的任务执行信息.
其中,待执行任务包括多个任务单元。
具体地,一个待执行任务中可以包括多个任务单元,每一个任务单元为一个可以独立执行的子任务,例如:一个待执行任务为获取一个文件,那么该待执行任务的任务单元可以包括:获取文件地址、对文件进行提取等等任务单元。
在一些实施例中,可以根据待执行任务的任务类型来确定待执行任务的单元任务,也可以是根据预设规则对将待执行任务进行拆分得到多个任务单元,例如:可以根据任务数据量大小,将待执行任务划分为均等的N个任务单元,也可以是根据需求划分为不均等的任务单元,本申请不做限定。
在一些实施例中,在S101中,获取待执行任务中各任务单元的任务执行信息,可以包括:
从任务执行表中获取各任务单元的任务执行状态和任务执行时间;
在任务执行状态为待执行状态,且任务执行时间早于当前时间的情况下,从任务配置表中获取任务单元的任务配置参数,
其中,任务执行信息包括任务执行状态、任务执行时间和任务配置参数。任务执行状态用于指示任务单元当前的状态是待执行或已执行或执行失败。
具体地,在本实施例中可以通过查询存储于数据库中的任务执行表,获取任务单元的任务执行状态和任务执行时间,在任务执行状态为待执行状态,且任务执行时间早于当前时间的情况下,说明该单元任务为需要执行的任务单元,然后,通过查询存储于数据库中的任务配置表,获取任务单元的任务配置参数,根据任务单元的任务配置参数自动执行待执行任务的N个任务单元。
在本实施例中,通过查询任务执行表中单元任务的任务执行状态和任务执行时间,确定需要执行的任务单元,然后从任务配置表中确定任务单元的配置参数,由此可以实现单元任务的自动执行。
在一些实施例中,上述从任务执行表中获取各任务单元的任务执行状态和任务执行时间之后,还可以包括:
在任务执行状态不为待执行状态,和/或,任务执行时间晚于当前时间的情况下,接收在任务执行表中对任务单元的第一输入;
响应于第一输入,对任务执行表中与任务单元的信息进行修改,以使任务单元的任务执行状态为待执行状态以及任务执行时间早于当前时间。
具体地,在开始执行待执行任务的任务单元之前,需要先确定任务单元在任务执行表中的执行状态以及执行时间是否满足,执行所需的条件,即任务执行状态为待执行状态,且任务执行时间晚于当前时间。当待执行任务的任务单元不满足执行条件时,需要对该任务单元的执行条件进行修改。将任务单元的执行状态修改为待执行,则程序可以识别出该任务单元为需要执行的任务单元;将任务单元的执行时间修改为早于当前时间的时刻,则该任务单元将会立即执行。
在本实施例中,可以通过修改任务执行表中待处理任务的任务单元的执行状态信息和执行时间,即可实现待处理任务的自动执行,操作简单,提升了任务执行的效率。
在一些实施例中,S101之前,还可以包括:
在任务配置表和任务执行表中不存在多个任务单元中的第一任务单元的情况下,接收在任务配置表和任务执行表中对第一任务单元的第二输入;
响应于第二输入,在任务配置表中增加第一任务单元的任务配置参数,以及,在任务执行表中增加第一任务单元的任务执行状态和任务执行时间。
具体地,在任务执行表和任务配置表中不存在待执行任务的某一个任务单元的情况下,可以预先将该任务单元的任务执行信息添加至任务执行性表和任务配置表中,以使该任务单元可以通过任务执行性表和任务配置表实现自动执行。
在S102中,基于第N个任务单元的任务执行信息,控制多个任务单元依次执行,获取执行结果。
具体地,在获取了待执行任务的N个任务单元之后,可以根据每个任务单元的任务执行信息,控制待执行任务的任务单元按照任务执行顺序依次执行,任务执行顺序可以是根据待执行任务的任务特征或者类型预先确定。
在一些实施例中,也可以是预先对N个任务单元进行标号,各任务单元独立执行,可以是按照标号顺序依次执行,也可以是在N个任务单元全部执行完毕之后,将每个任务单元的执行结果按照标号进行组合,得到待执行任务的处理结果。
在一些实施例中,上述S102中,基于各任务单元的任务执行信息,控制多个任务单元依次执行,获取执行结果,可以包括:
针对每个任务单元,在任务单元的执行状态信息为待执行且任务执行时间小于当前时刻的情况下,根据任务单元的任务配置参数执行任务单元,得到各任务单元的执行结果。
具体地,当任务单元的执行状态为待执行时,则程序可以识别出该任务单元为需要执行的任务单元,并且当任务单元的执行时间为早于当前时间的时刻时,则该任务单元将会立即执行,即通过获取任务配置表中任务单元的配置参数执行个任务单元,得到执行结果。
在本实施例中,可以通过确认任务执行中任务单元的执行状态信息和任务执行时间,自动执行任务单元。
在S103中,在执行结果指示N个任务单元执行失败的情况下,针对第N个任务单元进行故障处理,并并重新执行所述第N个任务单元。
具体地,在第N个任务单元的执行结果只是任务执行失败的情况下,可以单独对该任务单元进行故障处理,避免了在待执行任务的执行过程中,因某个较小的故障导致整个任务重新执行的情况出现。
在一些实施例中,上述S103可以包括:
在历史故障数据库中查询与任务单元信息匹配的至少一项历史故障处理数据,不同历史故障数据用于针对任务单元的不同故障进行处理的数据;
通过至少一项历史故障处理数据对第N个任务单元进行至少一次故障处理,各次故障处理所采用的历史故障数据不同,
其中,在每次历史故障处理数据对第N个任务单元进行故障处理后,重新执行所述第N个任务。
这里,历史故障数据库用于记录历史故障处理方法或过程的数据信息。
具体地,在第N个任务单元执行失败的情况下,可以根据该任务单元的任务单元信息(如:任务名称、任务标识等等),在历史故障处理数据库中查找与任务单元匹配的历史故障处理数据,根据查询到的故障处理数据对故障的任务单元进行故障处理,对任务单元进行一次故障处理后,冲新执行该任务单元,若仍然执行失败,则再次选取一个故障处理数据进行故障处理,每进行一次故障处理,则重新执行一次该任务单元。
在本实施例中,可以根据离数故障处理数据,对执行失败的任务单元自动进行故障处理,提高了故障处理的效率。
在一些实施例中,上述通过至少一项历史故障处理数据对第N个任务单元进行至少一次故障处理,可以包括:
对至少一项历史故障处理数据按照时间顺序进行排序;
按照排序依次通过各故障处理数据对所述第N个任务单元进行故障处理;
在故障处理的次数达到预设次数的情况下,输出提示信息,提示信息用于提示用户在至少一项历史故障处理数据未进行故障处理的历史故障处理数据中选择目标历史故障数据;
在接收到用户基于提示信息选择目标历史故障数据的情况下,通过目标历史故障数据对所述第N个任务单元进行故障处理。
具体地,在查询到多个与故障任务单元匹配的历史故障处理数据时,可以根据数据的生成时间,对历史故障处理数据进行排序(例如:时间距离但钱时间越近的故障处理数据排序越靠前,即有限采用最近一次故障处理所记录的故障处理数据);按照顺序每次选取一个故障处理数据,来对任务单元进行故障处理,直到该任务单元成功执行。为了提高故障处理的效率,在进行了多次故障处理之后(故障处理的次数达到预设次数,如10次),仍然执行失败,这时,可以生成提示信息,将查询到的炉石故障处理数据中还未用于故障处理的数据进行显示,以提示用户可以进行人工选择目标历史故障数据,依据目标历史故障数据在进行一次故障处理。
在本实施例中,在进行了预设次数的故障处理后,任务单元仍执行失败的情况下,可以生成提示信息,提示用户历史故障数据中,还未使用过的故障处理数据,供用户对故障处理方式进行选择,提高故障处理效率。
用户针对提示信息,可以进行选择历史故障处理数据来处理,也可以自行进行人工干预,提高故障先处理的准确率。
在一些实施例中,上述S103可以包括:
在执行到第N个任务单元且执行结果指示第N个任务单元执行失败的情况下,获取第N个任务单元的故障原因;
根据与故障原因对应的故障处理策略,针对第N个任务单元进行故障处理。
具体地,当任务单元的执行结果指示执行失败时,说明该任务单元出现了故障,此时可以获取该任务单元额的故障原因,根据不同的故障原因采取对应的故障处理措施。例如:当故障原因为网络故障时,可以对当前网络环境进行检测,输出网络故障提示,也可以是重新加你网络连接;当故障原因为数据错误时,可以是输出数据错误提示,以使用户对错误数据进行修改,等等,具体如何针对不同故障原因设置不同故障处理策略,本申请不做限定。
其中,在多个任务单元成功执行之后即可得到待执行任务的处理结果。
在本申请实施例中,在单个任务单元的执行出现故障时,可以至针对单个任务单元进行故障处理,故障处理之后,只需要再次执行该任务单元即可,不会影响其他任务单元的执行,提高了故障处理的效率,并且只需要处理故障的任务单元而不需要对整个待处理任务进行重启,节约了资源。
在一些实施例中,上述方法还可以包括:
在第N个任务单元的执行结果指示第N个任务单元执行成功的情况下,将任务执行表中第N个任务单元的执行状态更新为已执行;
在多个任务单元的执行状态为已执行的情况下,生成待执行任务的处理结果。
具体地,为了已经执行成功的任务单元,再次被执行造成不必要了资源浪费,当一个任务单元执行成功之后,需要在任务执行表中将该任务单元的执行状态信息修改为已执行。
以上为本申请实施例提供的任务处理方法的具体实现方式,能够获取待执行任务中第N个任务单元的任务执行信息;基于所述第N个任务单元的任务执行信息,控制所述多个任务单元依次执行,获取执行结果;在所述执行结果指示所述N个任务单元执行失败的情况下,针对所述第N个任务单元进行故障处理;在故障处理后重新执行所述第N个任务,在多个任务单元成功执行下得到待执行任务的处理结果。通过将待执行任务中的多个任务单元的任务执行信息,控制多个任务单元依次执行,每个任务单元独立运行,由此可以在单个任务单元出现故障的情况下,可以对单个业务单元进行故障处理,避免了业务处理过程中出现微小故障而导致整个业务需要重新执行,提高了任务执行的效率。
进一步,本申请实施例还可以在任务配置表和任务执行表中获取单元任务的任务执行信息,在任务执行信息满足预设条件的情况下,自动执行单元任务,每个单元任务独立运行,由此,在执行待执行任务时,只需要修改待执行任务的任务单元在任务执行表中的任务执行状态和任务执行时间,即可实现任务单元的自动执行,同时在单个任务单元出现故障的情况下,可以对单个业务单元进行处理,避免了业务处理过程中出现微小故障而导致整个业务需要重新执行。
为了便于对本实施例提供的任务处理方法的理解,在此提供上述认证方法方法的实际应用进行说明,具体参见如下示例:
本申请实施例任务处理方法可以实现一种自动任务预约模式,将本地代码统一继承新一代自动任务接口。继承后,编写自己的逻辑,形成一个独立的service。并配置任务号,在数据库中进行自动任务配置,针对回单系统,选择实时自动任务配置。新一代自动任务接口拥有一个前置方法,一个后置方法,继承后,可以在任务执行之前,调用前置方法,任务执行之后,调用后置方法。配置到数据库中固定的自动任务表中之后,如果需要执行任务,只需要将数据库中状态字段改为1,执行时间改为当前时间之前的时间,则自动任务可以迅速执行,并将状态字段改为0,代表执行任务成功,并生成一条任务实例,记录任务具体信息。状态字段改为3则代表任务执行失败,并在执行信息中生成配置的任务失败信息,方便排查。
本申请实施例的实现依赖于自动任务表的配置,具体步骤如下:
1、配置任务表s08t1_job_def,此表中记录任务号,任务描述与任务对应处理类(构建任务配置表)。
2、配置任务执行表s08t1_aschn_tsk_tef,此表中记录任务号,参数,任务名称以及任务状态(构建任务执行表)。
3、每次更改任务执行表状态后,会生成两条实例信息,实例信息可自动执行。
(1)自动任务的任务定义用于明确地描述一个任务的相关信息,它本身不用于执行业务逻辑,而是生成一条或多条用于执行任务的实例,它包含该任务编号、任务的起始、结束时间,执行周期、执行对象、任务状态(包括正常和取消)、下次执行时间等信息;
(2)自动任务实例是由自动任务定义根据执行周期计算出来的用于执行一次业务逻辑的数据,它除了有计划开始时间、执行状态这两个主要信息之外,还包括了任务定义编号、任务实例编号、实际开始时间、结束时间、异常信息等内容。
每个业务单元(即任务单元)可以随时重新跑数据,这样某些分行数据有问题,可以进行数据修改后,重新对当前任务进行状态更改,重新跑,对于运维来说,只需要更改数据库字段即可完成重跑,方便快捷。
某一业务单元业务有小的调整的时候,可以通过增加或修改前置,后置任务来调整业务,也可以通过前置或者后置任务来进行埋数,以此方便测试。
以回单生成业务为例:回单生成任务由后台程序根据配置参数,基础明细、账户等数据,以及平台签约基础信息等生成回单文件,并将其保存至文件服务器,此文件为唯一有效的回单文件,用于各渠道下载展示以及答应等,并记录相关信息。
因此,回单生成业务可以包括如下任务单元:数据信息完整性校验、合并回单数据、生成回单、生成回单文件。
具体回单生成流程可由以下任务单元构成:
1、数据信息完整性校验:若信息不完整,则根据关联明细,账户等基础数据,补充数据。
2、合并回单数据:若回单类型未配置,则直接生成回单;
3、生成回单:根据对应回单模板类型生成回单;
4、生成回单文件:生成xml、pdf格式文件。
基于上述实施例提供的任务处理方法,相应地,本申请还提供了任务处理装置的具体实现方式。请参见以下实施例。
首先参见图2,本申请实施例提供的任务处理装置200包括以下单元:
获取模块201,用于获取待执行任务中各任务单元的任务执行信息,待执行任务包括多个任务单元;
控制模块202,用于基于各任务单元的任务执行信息,控制多个任务单元依次执行,获取执行结果;
故障处理模块203,用于在执行结果指示N个任务单元执行失败的情况下,针对第N个任务单元进行故障处理,并重新执行所述第N个任务单元,第N个任务单元为多个任务单元中的任一任务单元,N为正整数。
本申请提供的任务处理装置200,能够获取待执行任务各任务单元的任务执行信息;基于各任务单元的任务执行信息,控制所述多个任务单元依次执行,获取执行结果;在所述执行结果指示所述N个任务单元执行失败的情况下,针对所述第N个任务单元进行故障处理。通过将待执行任务中的多个任务单元的任务执行信息,控制多个任务单元依次执行,每个任务单元独立运行,由此可以在单个任务单元出现故障的情况下,可以对单个业务单元进行故障处理,避免了业务处理过程中出现微小故障而导致整个业务需要重新执行,提高了任务执行的效率。
在一些实施例中,上述故障处理模块203,可以包括:
获取单元,用于获取第N个任务单元的任务单元信息,任务单元信息用于指示第N个任务单元;
查询单元,用于在历史故障数据库中查询与任务单元信息匹配的至少一项历史故障处理数据,不同历史故障数据用于针对任务单元的不同故障进行处理的数据;
处理单元,用于通过至少一项历史故障处理数据对第N个任务单元进行至少一次故障处理,各次故障处理所采用的历史故障数据不同,
其中,在每次历史故障处理数据对第N个任务单元进行故障处理后,重新执行第N个任务。
在一些实施例中,上述处理单元,可以包括:
排序子单元,用于对所述至少一项历史故障处理数据按照时间顺序进行排序;
第一处理子单元,用于按照所述排序依次通过各所述故障处理数据对所述第N个任务单元进行故障处理;
提示子单元,用于在所述故障处理的次数达到预设次数的情况下,输出提示信息,所述提示信息用于提示用户在所述至少一项历史故障处理数据未进行故障处理的历史故障处理数据中选择目标历史故障数据;
第二处理单元,用于在接收到所述用户基于所述提示信息选择所述目标历史故障数据的情况下,通过所述目标历史故障数据对所述第N个任务单元进行故障处理。
在一些实施例中,上述获取模块201,可以包括:
第一获取子模块,用于从任务执行表中获取各任务单元的任务执行状态和任务执行时间;
第二获取子模块,用于在任务执行状态为待执行状态,且任务执行时间早于当前时间的情况下,从任务配置表中获取任务单元的任务配置参数,
其中,任务执行信息包括任务执行状态、任务执行时间和任务配置参数。
作为本申请的另一种实现方式,为了进一步实现任务单元的自动执行,上述获取模块201,还可以包括:
接收子模块,用于在任务执行状态不为待执行状态,和/或,任务执行时间晚于当前时间的情况下,接收在任务执行表中对任务单元的第一输入;
修改子模块,用于响应于第一输入,对任务执行表中与任务单元的信息进行修改,以使任务单元的任务执行状态为待执行状态以及任务执行时间早于当前时间。
作为本申请的一种实现方式,为了进一步实现任务单元的自动执行,,上述任务处理装置200还可以包括:
接收模块,用于在任务配置表和任务执行表中不存在多个任务单元中的第一任务单元的情况下,接收在任务配置表和任务执行表中对第一任务单元的第二输入;
输入模块,用于响应于第二输入,在任务配置表中增加第一任务单元的任务配置参数,以及,在任务执行表中增加第一任务单元的任务执行状态和任务执行时间。
作为本申请的一种实现方式,为了实现任务单元的自动执行,上述控制模块202,包括:
执行子模块,用于针对每个任务单元,在任务单元的执行状态信息为待执行且任务执行时间小于当前时刻的情况下,根据任务单元的任务配置参数执行任务单元,得到各任务单元的执行结果。
作为本申请的一种实现方式,为了实现任务单元的自动执行,上述任务处理装置200,还包括:
更新模块,用于在第N个任务单元的执行结果指示N个任务执行单元执行成功的情况下,将任务执行表中第N个任务单元的执行状态更新为已执行;
生成模块,用于在多个任务单元的执行状态为已执行的情况下,生成待执行任务的处理结果。
在一些实施例中,上述故障处理模块203,包括:
第三获取子模块,用于在执行到第N个任务单元且执行结果指示第N个任务执行单元执行失败的情况下,获取第N个任务单元的故障原因;
故障处理子模块,用于根据与故障原因对应的故障处理策略,针对第N个任务执行单元进行故障处理。
图3示出了本申请实施例提供的任务处理设备的硬件结构示意图。
在任务处理设备可以包括处理器301以及存储有计算机程序指令的存储器302。
具体地,上述处理器301可以包括中央处理器(CPU),或者特定集成电路(Application Specific Integrated Circuit,ASIC),或者可以被配置成实施本申请实施例的一个或多个集成电路。
存储器302可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器302可包括硬盘驱动器(Hard Disk Drive,HDD)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(Universal Serial Bus,USB)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器302可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器302可在综合网关容灾设备的内部或外部。在特定实施例中,存储器302是非易失性固态存储器。
存储器可包括只读存储器(ROM),随机存取存储器(RAM),磁盘存储介质设备,光存储介质设备,闪存设备,电气、光学或其他物理/有形的存储器存储设备。因此,通常,存储器包括一个或多个编码有包括计算机可执行指令的软件的有形(非暂态)计算机可读存储介质(例如,存储器设备),并且当该软件被执行(例如,由一个或多个处理器)时,其可操作来执行参考根据本公开的任意一个实施例的任务处理方法所描述的操作。
处理器301通过读取并执行存储器302中存储的计算机程序指令,以实现上述实施例中的任意一种任务处理方法。
在一个示例中,任务处理设备还可包括通信接口303和总线310。其中,如图3所示,处理器301、存储器302、通信接口303通过总线310连接并完成相互间的通信。
通信接口303,主要用于实现本申请实施例中各模块、装置、单元和/或设备之间的通信。
总线310包括硬件、软件或两者,将在线数据流量计费设备的部件彼此耦接在一起。举例来说而非限制,总线可包括加速图形端口(AGP)或其他图形总线、增强工业标准架构(EISA)总线、前端总线(FSB)、超传输(HT)互连、工业标准架构(ISA)总线、无限带宽互连、低引脚数(LPC)总线、存储器总线、微信道架构(MCA)总线、外围组件互连(PCI)总线、PCI-Express(PCI-X)总线、串行高级技术附件(SATA)总线、视频电子标准协会局部(VLB)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线310可包括一个或多个总线。尽管本申请实施例描述和示出了特定的总线,但本申请考虑任何合适的总线或互连。
另外,结合上述实施例中的任务处理方法,本申请实施例可提供一种计算机存储介质来实现。该计算机存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现上述实施例中的任意一种任务处理方法。
需要明确的是,本申请并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本申请的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本申请的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。
以上所述的结构框图中所示的功能块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本申请的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、ROM、闪存、可擦除ROM(EROM)、软盘、CD-ROM、光盘、硬盘、光纤介质、射频(RF)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。
还需要说明的是,本申请中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本申请不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。
上面参考根据本公开的实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各方面。应当理解,流程图和/或框图中的每个方框以及流程图和/或框图中各方框的组合可以由计算机程序指令实现。这些计算机程序指令可被提供给通用计算机、专用计算机、或其它可编程数据处理装置的处理器,以产生一种机器,使得经由计算机或其它可编程数据处理装置的处理器执行的这些指令使能对流程图和/或框图的一个或多个方框中指定的功能/动作的实现。这种处理器可以是但不限于是通用处理器、专用处理器、特殊应用处理器或者现场可编程逻辑电路。还可理解,框图和/或流程图中的每个方框以及框图和/或流程图中的方框的组合,也可以由执行指定的功能或动作的专用硬件来实现,或可由专用硬件和计算机指令的组合来实现。
以上所述,仅为本申请的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。

Claims (12)

1.一种任务处理方法,其特征在于,包括:
获取待执行任务中各任务单元的任务执行信息,所述待执行任务包括多个任务单元;
基于各所述任务单元的任务执行信息,控制所述多个任务单元依次执行,获取执行结果;
在所述执行结果指示第N个任务单元执行失败的情况下,针对所述第N个任务单元进行故障处理,并重新执行所述第N个任务单元,所述第N个任务单元为所述多个任务单元中的任一任务单元,所述N为正整数。
2.根据权利要求1所述的方法,其特征在于,所述针对所述第N个任务单元进行故障处理,并重新执行所述第N个任务,包括:
获取所述第N个任务单元的任务单元信息,所述任务单元信息用于指示所述第N个任务单元;
在历史故障数据库中查询与所述任务单元信息匹配的至少一项历史故障处理数据,不同所述历史故障数据用于针对任务单元的不同故障进行处理的数据;
通过所述至少一项历史故障处理数据对所述第N个任务单元进行至少一次故障处理,各次所述故障处理所采用的历史故障数据不同,
其中,在每次所述历史故障处理数据对所述第N个任务单元进行故障处理后,重新执行所述第N个任务。
3.根据权利要求2所述的方法,其特征在于,所述通过所述至少一项历史故障处理数据对所述第N个任务单元进行至少一次故障处理,包括:
对所述至少一项历史故障处理数据按照时间顺序进行排序;
按照所述排序依次通过各所述故障处理数据对所述第N个任务单元进行故障处理;
在所述故障处理的次数达到预设次数的情况下,输出提示信息,所述提示信息用于提示用户在所述至少一项历史故障处理数据未进行故障处理的历史故障处理数据中选择目标历史故障数据;
在接收到所述用户基于所述提示信息选择所述目标历史故障数据的情况下,通过所述目标历史故障数据对所述第N个任务单元进行故障处理。
4.根据权利要求1所述的方法,其特征在于,所述获取待执行任务中各任务单元的任务执行信息,包括:
从任务执行表中获取所述各任务单元的任务执行状态和任务执行时间;
在所述任务执行状态为待执行状态,且所述任务执行时间早于当前时间的情况下,从任务配置表中获取所述任务单元的任务配置参数,
其中,所述任务执行信息包括所述任务执行状态、任务执行时间和任务配置参数。
5.根据权利要求4所述的方法,其特征在于,所述从任务执行表中获取各所述各任务单元的任务执行状态和任务执行时间之后,还包括:
在所述任务执行状态不为待执行状态,和/或,所述任务执行时间晚于当前时间的情况下,接收在所述任务执行表中对所述任务单元的第一输入;
响应于所述第一输入,对所述任务执行表中与所述任务单元的信息进行修改,以使所述任务单元的任务执行状态为待执行状态以及所述任务执行时间早于当前时间。
6.根据权利要求4所述的方法,其特征在于,所述获取待执行任务中各任务单元的任务执行信息之前,还包括:
在所述任务配置表和所述任务执行表中不存在所述多个任务单元中的第一任务单元的情况下,接收在所述任务配置表和所述任务执行表中对所述第一任务单元的第二输入;
响应于所述第二输入,在所述任务配置表中增加所述第一任务单元的任务配置参数,以及,在所述任务执行表中增加所述第一任务单元的任务执行状态和任务执行时间。
7.根据权利要求4所述的方法,其特征在于,所述基于各所述任务单元的任务执行信息,控制所述多个任务单元依次执行,获取执行结果,包括:
针对每个任务单元,在所述任务单元的所述执行状态信息为待执行且所述任务执行时间小于当前时刻的情况下,根据所述任务单元的任务配置参数执行所述任务单元,得到各所述任务单元的执行结果。
8.根据权利要求6所述的方法,其特征在于,所述方法还包括:
在所述第N个任务单元的执行结果指示所述第N个任务单元执行成功的情况下,将所述任务执行表中所述第N个任务单元的执行状态更新为已执行;
在所述多个任务单元的执行状态为已执行的情况下,生成所述待执行任务的处理结果。
9.一种任务处理装置,其特征在于,所述装置包括:
获取模块,用于获取待执行任务中各任务单元的任务执行信息,所述待执行任务包括多个任务单元;
控制模块,用于基于所述各任务单元的任务执行信息,控制所述多个任务单元依次执行,获取执行结果;
故障处理模块,用于在所述执行结果指示第N个任务单元执行失败的情况下,针对所述第N个任务单元进行故障处理,并重新执行所述第N个任务任务,所述第N个任务单元为所述多个任务单元中的任一任务单元,所述N为正整数。
10.一种任务处理设备,其特征在于,所述设备包括:处理器以及存储有计算机程序指令的存储器;
所述处理器执行所述计算机程序指令时实现如权利要求1-8任意一项所述的任务方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现如权利要求1-8任意一项所述的任务处理方法。
12.一种计算机程序产品,其特征在于,所述计算机程序产品中的指令由电子设备的处理器执行时,使得所述电子设备执行如权利要求1-8任意一项所述的任务处理方法。
CN202211202198.2A 2022-09-29 2022-09-29 任务处理方法、装置、设备、介质及程序产品 Pending CN115470032A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211202198.2A CN115470032A (zh) 2022-09-29 2022-09-29 任务处理方法、装置、设备、介质及程序产品

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211202198.2A CN115470032A (zh) 2022-09-29 2022-09-29 任务处理方法、装置、设备、介质及程序产品

Publications (1)

Publication Number Publication Date
CN115470032A true CN115470032A (zh) 2022-12-13

Family

ID=84335614

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211202198.2A Pending CN115470032A (zh) 2022-09-29 2022-09-29 任务处理方法、装置、设备、介质及程序产品

Country Status (1)

Country Link
CN (1) CN115470032A (zh)

Similar Documents

Publication Publication Date Title
EP3762882B1 (en) System and method for establishing common request processing
CN109408262B (zh) 一种业务数据处理方法及相关设备
CN110688828A (zh) 文件处理方法及装置、文件处理系统、计算机设备
CN107133233B (zh) 一种配置数据查询的处理方法及装置
CN111008206A (zh) 跨链交易的状态数据的存储方法、装置及存储介质
CN111367531B (zh) 代码处理方法及装置
CN114064112A (zh) 业务流程配置方法、装置、设备及存储介质
CN113902573A (zh) 理赔数据的处理方法及装置、存储介质、终端
CN111049916A (zh) 一种控制方法、装置、代理服务器及存储介质
CN115470032A (zh) 任务处理方法、装置、设备、介质及程序产品
CN112419052B (zh) 交易测试方法、装置、电子设备及可读存储介质
CN114240335A (zh) 一种数据处理的方法和装置
CN112686759A (zh) 对账监测方法、装置、设备及介质
CN113742305A (zh) 文件数据处理方法、装置以及服务端设备
CN111639936A (zh) 交易信息的获取方法、装置、电子设备及可读存储介质
CN111382054A (zh) 基于文件的测试流程处理方法、装置及计算机存储介质
CN115361390B (zh) 用于加入区块链网络的方法、计算机存储介质及电子设备
CN116562884B (zh) 数据要素流通方法、装置、电子设备及存储介质
CN115907412A (zh) 数据线的缺陷解决方法、装置、设备、介质及产品
CN115660863A (zh) 一种理财清算系统及方法
CN117710068A (zh) 基于人工智能的临时供应商核验方法、装置及设备
CN113886379A (zh) 数据处理方法、装置、设备及存储介质
CN116071075A (zh) 交易完整性核对方法、装置、设备、介质和程序产品
CN114443472A (zh) 一种接口容错性测试方法、装置及设备
CN113111631A (zh) 数据处理方法、装置、设备、存储介质及程序产品

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination