CN115375101A - 任务执行方法、装置、终端及存储介质 - Google Patents
任务执行方法、装置、终端及存储介质 Download PDFInfo
- Publication number
- CN115375101A CN115375101A CN202210894294.1A CN202210894294A CN115375101A CN 115375101 A CN115375101 A CN 115375101A CN 202210894294 A CN202210894294 A CN 202210894294A CN 115375101 A CN115375101 A CN 115375101A
- Authority
- CN
- China
- Prior art keywords
- task
- execution
- attribute information
- execution result
- tasks
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06316—Sequencing of tasks or work
Landscapes
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- Operations Research (AREA)
- Game Theory and Decision Science (AREA)
- Development Economics (AREA)
- Marketing (AREA)
- Educational Administration (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请实施例提供一种任务执行方法、装置、终端及存储介质,方法包括:获取任务执行器的类型信息;若类型信息为预设类型信息,则获取任务组中每个任务的属性信息,以得到属性信息集合;根据属性信息集合从任务组中确定出起始任务和第一任务集合,第一任务集合为任务组中除起始任务之外的任务;根据起始任务的属性信息和任务执行器对起始任务进行执行,以得到第一执行结果;在执行起始任务后,根据属性信息集合和任务执行器对第一任务集合中的任务进行执行,以得到第二执行结果,能够根据执行器的类型和任务组中的任务的属性信息来对任务进行执行,从而可以自动的基于任务与的属性信息对任务进行执行,从而提升了任务执行时的准确性。
Description
技术领域
本申请涉及数据处理技术领域,具体涉及一种任务执行方法、装置、终端及存储介质。
背景技术
供应链金融业务平台有其独特的业务背景,部分业务处理需要通过日终或日初进行批量任务统一处理。在常见的任务调度平台中,一般单个任务可以通过设置定时表达式来进行任务执行时的调度。如果是多个任务之间在业务层面存在依赖或明确的顺序关系,只能通过人工设置执行时间来控制多任务之间处理的先后顺序,可能存在任务之间的衔接调度出现偏差的情况,例如,现有的技术在处理一系列逻辑严谨的“串行化”任务场景时,只能通过人工干预设置触发时间来调度执行,其中单个任务运行时长是变化的,如某一任务运行时长很短,到下一个任务执行时等待时间过长,这样任务间的衔接效率低,导致拉长所有任务执行完的时长;如某一任务运行时长过长,可能出现下一个任务开始处理时,所依赖的前一个任务没有处理完的情况,因依赖前一个任务的处理结果而无法得到正确的结果,从而导致了在任务执行时的准确性较低。
发明内容
本申请实施例提供一种任务执行方法、装置、终端及存储介质,能够根据执行器的类型和任务组中的任务的属性信息来对任务进行执行,从而可以自动的基于任务与的属性信息对任务进行执行,从而提升了任务执行时的准确性。
本申请实施例的第一方面提供了一种任务执行方法,所述方法包括:
获取任务执行器的类型信息;
若所述类型信息为预设类型信息,则获取任务组中每个任务的属性信息,以得到属性信息集合;
根据所述属性信息集合从所述任务组中确定出起始任务和第一任务集合,所述第一任务集合为所述任务组中除所述起始任务之外的任务;
根据所述起始任务的属性信息和所述任务执行器对所述起始任务进行执行,以得到第一执行结果;
在执行所述起始任务以得到所述第一执行结果后,根据所述属性信息集合和所述任务执行器对所述第一任务集合中的任务进行执行,以得到第二执行结果。
在一个可能的实现方式中,所述根据所述起始任务的属性信息和所述任务执行器对所述起始任务进行执行,以得到第一执行结果,包括:
根据所述起始任务的属性信息,确定所述起始任务的任务执行表达式;
根据所述任务执行表达式和所述任务执行器对所述起始任务进行执行,以得到第一执行结果。
在一个可能的实现方式中,所述根据所述属性信息集合和所述任务执行器对所述第一任务集合中的任务进行执行,以得到第二执行结果,包括:
根据所述属性信息集合中所述起始任务对应的属性信息,从所述第一任务集合中确定出起始任务的关联任务集合和非关联任务集合;
根据所述关联任务集合中的关联任务的属性信息,确定出所述关联任务集合中的关联任务的第一执行序列;
根据所述第一执行序列和所述任务执行器对所述关联任务集合中关联任务进行执行,以得到第一子执行结果;
确定所述非关联任务集合中非关联任务的第二执行序列;
根据所述第二执行序列和所述任务执行器对所述非关联任务集合中非关联任务进行执行,以得到第二子执行结果;
根据所述第一子执行结果和所述第二子执行结果,确定所述第二执行结果。
在一个可能的实现方式中,所述根据所述属性信息集合和所述任务执行器对所述第一任务集合中的任务进行执行,以得到第二执行结果,包括:
根据所述属性信息集合,确定所述第一任务集合中的父级任务集合和与所述父级任务集合中的父级任务对应的子任务集合;
确定所述父级任务集合中的父级任务的第三执行序列,以及确定所述父级任务对应的子任务集合中的子任务的第四执行序列;
根据所述第三执行序列、所述第四执行序列和所述任务执行器对所述第一任务集合中的任务进行执行,以得到第二执行结果。
在一个可能的实现方式中,所述方法还包括:
根据所述判断所述第一执行结果是否为异常执行结果;
若所述执行结果为异常执行结果,则提取所述第一执行结果中的第一参数和第二参数;
根据所述第一参数,确定异常信息;
根据所述异常信息和所述第二参数,确定所述起始任务的调整信息;
根据所述调整信息对所述起始任务进行调整,以得到调整后的起始任务。
本申请实施例的第二方面提供了一种任务执行装置,所述装置包括:
第一获取单元,用于获取任务执行器的类型信息;
第二获取单元,用于若所述类型信息为预设类型信息,则获取任务组中每个任务的属性信息,以得到属性信息集合;
确定单元,用于根据所述属性信息集合从所述任务组中确定出起始任务和第一任务集合,所述第一任务集合为所述任务组中除所述起始任务之外的任务;
第一执行单元,用于根据所述起始任务的属性信息和所述任务执行器对所述起始任务进行执行,以得到第一执行结果;
第二执行单元,用于在执行所述起始任务以得到所述第一执行结果后,根据所述属性信息集合和所述任务执行器对所述第一任务集合中的任务进行执行,以得到第二执行结果。
在一个可能的实现方式中,所述第一执行单元用于:
根据所述起始任务的属性信息,确定所述起始任务的任务执行表达式;
根据所述任务执行表达式和所述任务执行器对所述起始任务进行执行,以得到第一执行结果。
在一个可能的实现方式中,所述第二执行单元用于:
根据所述属性信息集合中所述起始任务对应的属性信息,从所述第一任务集合中确定出起始任务的关联任务集合和非关联任务集合;
根据所述关联任务集合中的关联任务的属性信息,确定出所述关联任务集合中的关联任务的第一执行序列;
根据所述第一执行序列和所述任务执行器对所述关联任务集合中关联任务进行执行,以得到第一子执行结果;
确定所述非关联任务集合中非关联任务的第二执行序列;
根据所述第二执行序列和所述任务执行器对所述非关联任务集合中非关联任务进行执行,以得到第二子执行结果;
根据所述第一子执行结果和所述第二子执行结果,确定所述第二执行结果。
在一个可能的实现方式中,所述第二执行单元用于:
根据所述属性信息集合,确定所述第一任务集合中的父级任务集合和与所述父级任务集合中的父级任务对应的子任务集合;
确定所述父级任务集合中的父级任务的第三执行序列,以及确定所述父级任务对应的子任务集合中的子任务的第四执行序列;
根据所述第三执行序列、所述第四执行序列和所述任务执行器对所述第一任务集合中的任务进行执行,以得到第二执行结果。
在一个可能的实现方式中,所述装置还用于:
根据所述判断所述第一执行结果是否为异常执行结果;
若所述执行结果为异常执行结果,则提取所述第一执行结果中的第一参数和第二参数;
根据所述第一参数,确定异常信息;
根据所述异常信息和所述第二参数,确定所述起始任务的调整信息;
根据所述调整信息对所述起始任务进行调整,以得到调整后的起始任务。
本申请实施例的第三方面提供一种终端,包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如本申请实施例第一方面中的步骤指令。
本申请实施例的第四方面提供了一种计算机可读存储介质,其中,上述计算机可读存储介质存储用于电子数据交换的计算机程序,其中,上述计算机程序使得计算机执行如本申请实施例第一方面中所描述的部分或全部步骤。
本申请实施例的第五方面提供了一种计算机程序产品,其中,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如本申请实施例第一方面中所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。
实施本申请实施例,至少具有如下有益效果:
通过获取任务执行器的类型信息,若所述类型信息为预设类型信息,则获取任务组中每个任务的属性信息,以得到属性信息集合,根据所述属性信息集合从所述任务组中确定出起始任务和第一任务集合,所述第一任务集合为所述任务组中除所述起始任务之外的任务,根据所述起始任务的属性信息和所述任务执行器对所述起始任务进行执行,以得到第一执行结果,在执行所述起始任务以得到所述第一执行结果后,根据所述属性信息集合和所述任务执行器对所述第一任务集合中的任务进行执行,以得到第二执行结果,因此,能够根据执行器的类型和任务组中的任务的属性信息来对任务进行执行,从而可以自动的基于任务与的属性信息对任务进行执行,从而提升了任务执行时的准确性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供了一种任务执行方法的流程示意图;
图2为本申请实施例提供了来另一种任务执行方法的流程示意图;
图3为本申请实施例提供的一种终端的结构示意图;
图4为本申请实施例提供了一种任务执行装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本申请所描述的实施例可以与其它实施例相结合。
请参阅图1,图1为本申请实施例提供了一种任务执行方法的流程示意图。如图1所示,该方法包括:
101、获取任务执行器的类型信息。
任务执行方法可以应用于分布式任务调度平台,基于该分布式任务调度平台进行任务执行。该分布式任务调度平台中包括有调度模块和任务模块,调度模块进行任务调度时,将会解析不同的任务参数发起远程调用,调用各自的远程执行器服务。任务执行时也可以理解为对任务进行调度后执行。
可以获取到任务执行器的标识信息,根据该标识信息,确定出任务执行器的类型信息。任务类型可以包括有按照“cron触发”的类型、按序列执行任务、非按序列执行任务等。
在分布式任务调度平台中的任务执行模型可以新增如下内容,例如:
如对XxlJobGroup、XxlJobInfo等进行修改。其中XxlJobGroup模型增加“是否所辖任务按序列执行”等属性,XxlJobInfo模型增加“排序”、“是否可中断”、“是否子任务”、“触发类型”等属性。“触发类型”新增枚举值“按次序触发”。
其中,原型产品可以是分布式任务调度平台XXL-JOB,XXL-JOB中“调度模块”和“任务模块”完全解耦,调度模块进行任务调度时,将会解析不同的任务参数发起远程调用,调用各自的远程执行器服务。XXL-JOB中包括有XxlJobGroup模型、XxlJobInfo模型等。
102、若所述类型信息为预设类型信息,则获取任务组中每个任务的属性信息,以得到属性信息集合。
其中,预设类型信息可以是按序列执行任务的类型信息。即,需要判断任务执行器的类型是否为按序列执行任务的类型,若该类型信息为按序列执行任务的类型信息,则获取到任务组中的任务的属性信息。该属性信息包括有表达式信息、触发类型、执行信息、执行优先级等。执行信息可以包括有子任务信息、关联任务等。
103、根据所述属性信息集合从所述任务组中确定出起始任务和第一任务集合,所述第一任务集合为所述任务组中除所述起始任务之外的任务。
可以根据属性信息集合中的属性信息中的执行优先级从任务组中确定出起始任务和第一任务集合。起始任务的执行优先级为最高执行优先级。也可以是通过属性信息集合中的属性信息中的执行标识,根据该执行标识确定出起始任务和第一任务集合,该执行标识可以指示起始任务。还可以是通过指定起始任务的方式来确定出起始任务和第一任务集合。当然还可以是通过其它方式指示任务组中的起始任务,此处仅为举例说明。
104、根据所述起始任务的属性信息和所述任务执行器对所述起始任务进行执行,以得到第一执行结果。
可以根据起始任务的属性信息确定出的任务执行表达式,对起始任务进行执行,得到第一执行结果。
105、在执行所述起始任务以得到所述第一执行结果后,根据所述属性信息集合和所述任务执行器对所述第一任务集合中的任务进行执行,以得到第二执行结果。
可以根据属性信息集合确定出起始任务的关联任务集合和非关联任务集合,并根据关联任务的属性信息和非关联任务的属性信息,确定出不同的执行序列,并执行,以得到第二执行结果。
本示例中,通过获取任务执行器的类型信息,若所述类型信息为预设类型信息,则获取任务组中每个任务的属性信息,以得到属性信息集合,根据所述属性信息集合从所述任务组中确定出起始任务和第一任务集合,所述第一任务集合为所述任务组中除所述起始任务之外的任务,根据所述起始任务的属性信息和所述任务执行器对所述起始任务进行执行,以得到第一执行结果,在执行所述起始任务以得到所述第一执行结果后,根据所述属性信息集合和所述任务执行器对所述第一任务集合中的任务进行执行,以得到第二执行结果,因此,能够根据执行器的类型和任务组中的任务的属性信息来对任务进行执行,从而可以自动的基于任务与的属性信息对任务进行执行,从而提升了任务执行时的准确性。
在一个可能的实现方式中,根据所述起始任务的属性信息和所述任务执行器对所述起始任务进行执行,以得到第一执行结果的方法包括:
A1、根据所述起始任务的属性信息,确定所述起始任务的任务执行表达式;
A2、所述任务执行器根据所述任务执行表达式对所述起始任务进行执行,以得到第一执行结果。
可以在确定任务执行表达式之前,判断执行器(job_group)是否为按序列执行任务的执行器。如果为否,则按照原来的模式进行调度;如为是,则确定执行器内优先级最高的任务作为起始任务,即order值最小的job且触发类型为“cron触发”,之后按照该任务的cron表达式进行触发。
可以提取属性信息中的触发类型,根据触发类型确定出任务执行表达式。例如,触发类型为cron触发,则其任务执行表达式为cron表达式。
在确定出任务执行表达式后,则执行器基于该任务执行表达式对起始任务进行执行,以得到第一执行结果。
本示例中,通过属性信息确定出执行表达式,后续基于该执行表达式进行任务执行,则可以提升任务执行时的效率。
在一个可能的实现方式中,一种可能的根据所述属性信息集合和所述任务执行器对所述第一任务集合中的任务进行执行,以得到第二执行结果,包括:
B1、根据所述属性信息集合中所述起始任务对应的属性信息,从所述第一任务集合中确定出起始任务的关联任务集合和非关联任务集合;
B2、根据所述关联任务集合中的关联任务的属性信息,确定出所述关联任务集合中的关联任务的第一执行序列;
B3、根据所述第一执行序列和所述任务执行器对所述关联任务集合中关联任务进行执行,以得到第一子执行结果;
B4、确定所述非关联任务集合中非关联任务的第二执行序列;
B5、根据所述第二执行序列和所述任务执行器对所述非关联任务集合中非关联任务进行执行,以得到第二子执行结果;
B6、根据所述第一子执行结果和所述第二子执行结果,确定所述第二执行结果。
其中,关联任务集合可以理解为起始任务的子任务集合,该子任务集合可以理解为起始任务的直接子任务以及起始任务的直接子任务的子任务,起始任务的直接子任务的子任务可以理解为起始任务的子任务中还具有其对应的子任务。非关联任务集合可以理解为与除关联任务集合以外的任务构成的集合,例如,其他父级别任务及其对应的子任务等。
可以根据关联任务的属性信息,确定关联任务之间的执行顺序,具体例如,可以根据属性信息确定关联任务之间的执行逻辑,根据该执行逻辑确定出执行顺序,再根据执行顺序确定出第一执行序列。
确定所述非关联任务集合中非关联任务的第二执行序列的方法可以为:根据非关联任务的任务级别,提取该任务级别中与起始任务的执行级别相同的任务,确定该任务级别中与起始任务的执行级别相同的任务的执行顺序,以及该任务级别中与起始任务的执行级别相同的任务的子任务的执行顺序,并进行顺序组合,从而确定出第二执行序列。
例如,第一任务、第二任务为与起始任务级别相同的任务,执行顺序为第一任务、第二任务,则顺序组合后的序列可以为第一任务、第一任务的子任务、第二任务、第二任务的子任务。
可以将第一子执行结果和第二子执行结果进行合并处理,以得到第二执行结果。具体可以是将第一子执行结果和第二子执行结果的并集,确定为第二执行结果。
其中,执行器中每一个与起始任务的执行级别相同的任务执行失败时,判断是否需要重试。如不需要重试或重试达到最大重试次数依然执行失败,则检查该任务是否可忽略出错信息。如果可以忽略,则继续往下执行其它任务,反之结束本次任务执行。
本示例中,通过属性信息集合中起始任务对应的属性信息确定出关联任务集合和非关联任务集合,并对关联任务集合和非关联任务集合确定对应的执行顺序并进行执行,从而可以提升执行效率和准确性。
在一个可能的实现方式中,一种可能的根据所述属性信息集合和所述任务执行器对所述第一任务集合中的任务进行执行,以得到第二执行结果,包括:
C1、根据所述属性信息集合,确定所述第一任务集合中的父级任务集合和与所述父级任务集合中的父级任务对应的子任务集合;
C2、确定所述父级任务集合中的父级任务的第三执行序列,以及确定所述父级任务对应的子任务集合中的子任务的第四执行序列;
C3、根据所述第三执行序列、所述第四执行序列和所述任务执行器对所述第一任务集合中的任务进行执行,以得到第二执行结果。
其中,可以根据属性信息集合中的任务标识,来确定出父级任务集合和与所述父级任务集合中的父级任务对应的子任务集合。
可以根据父级任务之间的任务需求,来确定出父级任务集合的第三执行序列。具体的,存在任务a、b、c、d,四个任务相互独立,且任务需求为按照“任务a->任务b->任务c->任务d”这样的顺序调度执行,则第三执行序列为“任务a->任务b->任务c->任务d”。
子任务集合中的子任务对应的第四执行序列可以参照前述实施例中子任务的执行顺序的确定方法。
可以对父级任务执行,得到执行结果,然后对该父级任务的子任务集合进行执行,得到相应的执行结果,再对后续的父任务进行执行,并执行其对应的子任务,直至所有任务执行完成,以得到第二执行结果。
本示例中,通过确定出父级任务的第三执行顺序,以及父级任务对应的子任务的第四执行顺序,并按照第三执行顺序和第四执行顺序进行执行,得到第二执行结果,提升了任务执行时的准确性和效率。
在一个可能的实现方式中,再执行结果为异常时,还可以对任务进行调整,所述具体如下:
D1、根据所述判断所述第一执行结果是否为异常执行结果;
D2、若所述执行结果为异常执行结果,则提取所述第一执行结果中的第一参数和第二参数;
D3、根据所述第一参数,确定异常信息;
D4、根据所述异常信息和所述第二参数,确定所述起始任务的调整信息;
D5、根据所述调整信息对所述起始任务进行调整,以得到调整后的起始任务。
其中,可以提取第一执行结果中的异常判断字段,根据该异常判断字段来判别第一执行结果是否为异常执行结果。异常判断字段与异常执行结果相对应,异常判断字段内的不同信息,对应有不同的执行结果。从而可以判别第一执行结果是否为异常执行结果。
其中,第一参数可以理解为异常信息对应的参数,第二参数为执行参数。从而可以根据第一参数确定出异常信息。不同的异常信息、第二参数对应有不同的调整信息。该调整信息用于对起始任务进行调整,以使得调整后的起始任务能够避免执行时再次出现该异常信息。
本示例中,通过异常信息和第二参数确定的调整信息对起始任务进行调整,以得到调整后的起始信息,从而可以提升任务执行时的可靠性。
请参阅图2,图2为本申请实施例提供了另一种任务执行方法的流程示意图。如图2所示,该方法包括:
201、获取任务执行器的类型信息;
202、若所述类型信息为预设类型信息,则获取任务组中每个任务的属性信息,以得到属性信息集合;
203、根据所述属性信息集合从所述任务组中确定出起始任务和第一任务集合,所述第一任务集合为所述任务组中除所述起始任务之外的任务;
204、根据所述起始任务的属性信息和所述任务执行器对所述起始任务进行执行,以得到第一执行结果;
205、在执行所述起始任务后,根据所述属性信息集合中所述起始任务对应的属性信息,从所述第一任务集合中确定出起始任务的关联任务集合和非关联任务集合;
206、根据所述关联任务集合中的关联任务的属性信息,确定出所述关联任务集合中的关联任务的第一执行序列;
207、根据所述第一执行序列和所述任务执行器对所述关联任务集合中关联任务进行执行,以得到第一子执行结果;
208、确定所述非关联任务集合中非关联任务的第二执行序列;
209、根据所述第二执行序列和所述任务执行器对所述非关联任务集合中非关联任务进行执行,以得到第二子执行结果;
210、根据所述第一子执行结果和所述第二子执行结果,确定所述第二执行结果。
本示例中,通过属性信息集合中起始任务对应的属性信息确定出关联任务集合和非关联任务集合,并对关联任务集合和非关联任务集合确定对应的执行顺序并进行执行,从而可以提升执行效率和准确性。
与上述实施例一致的,请参阅图3,图3为本申请实施例提供的一种终端的结构示意图,如图所示,包括处理器、输入设备、输出设备和存储器,处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,上述程序包括用于执行以下步骤的指令;
获取任务执行器的类型信息;
若所述类型信息为预设类型信息,则获取任务组中每个任务的属性信息,以得到属性信息集合;
根据所述属性信息集合从所述任务组中确定出起始任务和第一任务集合,所述第一任务集合为所述任务组中除所述起始任务之外的任务;
根据所述起始任务的属性信息和所述任务执行器对所述起始任务进行执行,以得到第一执行结果;
在执行所述起始任务以得到所述第一执行结果后,根据所述属性信息集合和所述任务执行器对所述第一任务集合中的任务进行执行,以得到第二执行结果。
上述主要从方法侧执行过程的角度对本申请实施例的方案进行了介绍。可以理解的是,终端为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所提供的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对终端进行功能单元的划分,例如,可以对应各个功能划分各个功能单元,也可以将两个或两个以上的功能集成在一个处理单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。需要说明的是,本申请实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
与上述一致的,请参阅图4,图4为本申请实施例提供了一种任务执行装置的结构示意图。如图4所示,所述装置包括:
第一获取单元401,用于获取任务执行器的类型信息;
第二获取单元402,用于若所述类型信息为预设类型信息,则获取任务组中每个任务的属性信息,以得到属性信息集合;
确定单元403,用于根据所述属性信息集合从所述任务组中确定出起始任务和第一任务集合,所述第一任务集合为所述任务组中除所述起始任务之外的任务;
第一执行单元404,用于根据所述起始任务的属性信息和所述任务执行器对所述起始任务进行执行,以得到第一执行结果;
第二执行单元405,用于在执行所述起始任务以得到所述第一执行结果后,根据所述属性信息集合和所述任务执行器对所述第一任务集合中的任务进行执行,以得到第二执行结果。
在一个可能的实现方式中,所述第一执行单元404用于:
根据所述起始任务的属性信息,确定所述起始任务的任务执行表达式;
根据所述任务执行表达式和所述任务执行器对所述起始任务进行执行,以得到第一执行结果。
在一个可能的实现方式中,所述第二执行单元405用于:
根据所述属性信息集合中所述起始任务对应的属性信息,从所述第一任务集合中确定出起始任务的关联任务集合和非关联任务集合;
根据所述关联任务集合中的关联任务的属性信息,确定出所述关联任务集合中的关联任务的第一执行序列;
根据所述第一执行序列和所述任务执行器对所述关联任务集合中关联任务进行执行,以得到第一子执行结果;
确定所述非关联任务集合中非关联任务的第二执行序列;
根据所述第二执行序列和所述任务执行器对所述非关联任务集合中非关联任务进行执行,以得到第二子执行结果;
根据所述第一子执行结果和所述第二子执行结果,确定所述第二执行结果。
在一个可能的实现方式中,所述第二执行单元405用于:
根据所述属性信息集合,确定所述第一任务集合中的父级任务集合和与所述父级任务集合中的父级任务对应的子任务集合;
确定所述父级任务集合中的父级任务的第三执行序列,以及确定所述父级任务对应的子任务集合中的子任务的第四执行序列;
根据所述第三执行序列、所述第四执行序列和所述任务执行器对所述第一任务集合中的任务进行执行,以得到第二执行结果。
在一个可能的实现方式中,所述装置还用于:
根据所述判断所述第一执行结果是否为异常执行结果;
若所述执行结果为异常执行结果,则提取所述第一执行结果中的第一参数和第二参数;
根据所述第一参数,确定异常信息;
根据所述异常信息和所述第二参数,确定所述起始任务的调整信息;
根据所述调整信息对所述起始任务进行调整,以得到调整后的起始任务。
本申请实施例还提供一种计算机存储介质,其中,该计算机存储介质存储用于电子数据交换的计算机程序,该计算机程序使得计算机执行如上述方法实施例中记载的任何一种任务执行方法的部分或全部步骤。
本申请实施例还提供一种计算机程序产品,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,该计算机程序使得计算机执行如上述方法实施例中记载的任何一种任务执行方法的部分或全部步骤。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在申请明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件程序模块的形式实现。
所述集成的单元如果以软件程序模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器、随机存取器、磁盘或光盘等。
以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种任务执行方法,其特征在于,所述方法包括:
获取任务执行器的类型信息;
若所述类型信息为预设类型信息,则获取任务组中每个任务的属性信息,以得到属性信息集合;
根据所述属性信息集合从所述任务组中确定出起始任务和第一任务集合,所述第一任务集合为所述任务组中除所述起始任务之外的任务;
根据所述起始任务的属性信息和所述任务执行器对所述起始任务进行执行,以得到第一执行结果;
在执行所述起始任务以得到所述第一执行结果后,根据所述属性信息集合和所述任务执行器对所述第一任务集合中的任务进行执行,以得到第二执行结果。
2.根据权利要求1所述的方法,其特征在于,所述根据所述起始任务的属性信息和所述任务执行器对所述起始任务进行执行,以得到第一执行结果,包括:
根据所述起始任务的属性信息,确定所述起始任务的任务执行表达式;
根据所述任务执行表达式和所述任务执行器对所述起始任务进行执行,以得到第一执行结果。
3.根据权利要求1或2所述的方法,其特征在于,所述根据所述属性信息集合和所述任务执行器对所述第一任务集合中的任务进行执行,以得到第二执行结果,包括:
根据所述属性信息集合中所述起始任务对应的属性信息,从所述第一任务集合中确定出起始任务的关联任务集合和非关联任务集合;
根据所述关联任务集合中的关联任务的属性信息,确定出所述关联任务集合中的关联任务的第一执行序列;
根据所述第一执行序列和所述任务执行器对所述关联任务集合中关联任务进行执行,以得到第一子执行结果;
确定所述非关联任务集合中非关联任务的第二执行序列;
根据所述第二执行序列和所述任务执行器对所述非关联任务集合中非关联任务进行执行,以得到第二子执行结果;
根据所述第一子执行结果和所述第二子执行结果,确定所述第二执行结果。
4.根据权利要求1或2所述的方法,其特征在于,所述根据所述属性信息集合和所述任务执行器对所述第一任务集合中的任务进行执行,以得到第二执行结果,包括:
根据所述属性信息集合,确定所述第一任务集合中的父级任务集合和与所述父级任务集合中的父级任务对应的子任务集合;
确定所述父级任务集合中的父级任务的第三执行序列,以及确定所述父级任务对应的子任务集合中的子任务的第四执行序列;
根据所述第三执行序列、所述第四执行序列和所述任务执行器对所述第一任务集合中的任务进行执行,以得到第二执行结果。
5.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
根据所述判断所述第一执行结果是否为异常执行结果;
若所述执行结果为异常执行结果,则提取所述第一执行结果中的第一参数和第二参数;
根据所述第一参数,确定异常信息;
根据所述异常信息和所述第二参数,确定所述起始任务的调整信息;
根据所述调整信息对所述起始任务进行调整,以得到调整后的起始任务。
6.一种任务执行装置,其特征在于,所述装置包括:
第一获取单元,用于获取任务执行器的类型信息;
第二获取单元,用于若所述类型信息为预设类型信息,则获取任务组中每个任务的属性信息,以得到属性信息集合;
确定单元,用于根据所述属性信息集合从所述任务组中确定出起始任务和第一任务集合,所述第一任务集合为所述任务组中除所述起始任务之外的任务;
第一执行单元,用于根据所述起始任务的属性信息和所述任务执行器对所述起始任务进行执行,以得到第一执行结果;
第二执行单元,用于在执行所述起始任务以得到所述第一执行结果后,根据所述属性信息集合和所述任务执行器对所述第一任务集合中的任务进行执行,以得到第二执行结果。
7.根据权利要求6所述的装置,其特征在于,所述第一执行单元用于:
根据所述起始任务的属性信息,确定所述起始任务的任务执行表达式;
根据所述任务执行表达式和所述任务执行器对所述起始任务进行执行,以得到第一执行结果。
8.根据权利要求6或7所述的装置,其特征在于,所述第二执行单元用于:
根据所述属性信息集合中所述起始任务对应的属性信息,从所述第一任务集合中确定出起始任务的关联任务集合和非关联任务集合;
根据所述关联任务集合中的关联任务的属性信息,确定出所述关联任务集合中的关联任务的第一执行序列;
根据所述第一执行序列和所述任务执行器对所述关联任务集合中关联任务进行执行,以得到第一子执行结果;
确定所述非关联任务集合中非关联任务的第二执行序列;
根据所述第二执行序列和所述任务执行器对所述非关联任务集合中非关联任务进行执行,以得到第二子执行结果;
根据所述第一子执行结果和所述第二子执行结果,确定所述第二执行结果。
9.一种终端,其特征在于,包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如权利要求1-5任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-5任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210894294.1A CN115375101A (zh) | 2022-07-27 | 2022-07-27 | 任务执行方法、装置、终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210894294.1A CN115375101A (zh) | 2022-07-27 | 2022-07-27 | 任务执行方法、装置、终端及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115375101A true CN115375101A (zh) | 2022-11-22 |
Family
ID=84063494
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210894294.1A Pending CN115375101A (zh) | 2022-07-27 | 2022-07-27 | 任务执行方法、装置、终端及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115375101A (zh) |
-
2022
- 2022-07-27 CN CN202210894294.1A patent/CN115375101A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113807821A (zh) | 基于离散场景同步工单的方法、系统、设备及存储介质 | |
CN112748993A (zh) | 任务执行方法、装置、存储介质及电子设备 | |
CN102572896A (zh) | 一种无线通讯系统升级方法及升级装置 | |
CN115904352A (zh) | 流程编排方法、装置、存储介质和业务流程执行方法 | |
CN107608772A (zh) | 一种批处理任务配置调度的方法和系统 | |
CN112131315A (zh) | 多任务并行开发下的数据库同步方法及装置 | |
CN112114903A (zh) | 文件加载方法及装置 | |
CN113485814A (zh) | 批量任务调度方法及装置 | |
CN115375101A (zh) | 任务执行方法、装置、终端及存储介质 | |
CN112346842A (zh) | 一种基于有向无环图的工作流任务调度方法 | |
CN110287182B (zh) | 一种大数据的数据对比方法、装置、设备及终端 | |
CN109063846B (zh) | 机器学习的运行方法、装置、设备及存储介质 | |
CN113342512B (zh) | 一种io任务静默与驱动方法、装置及相关设备 | |
CN114416305A (zh) | 一种机器人引擎实现方法、系统及电子设备 | |
CN114675948A (zh) | 一种dag数据模型动态调度方法及系统 | |
CN110597216B (zh) | 制造执行系统的事务编排方法、装置及可读存储介质 | |
CN113703804A (zh) | 系统升级方法、系统、装置及存储介质 | |
CN110795224A (zh) | 一种基于Ansible的自动化运维系统和方法 | |
CN113377463B (zh) | 信用卡核心系统进程启停方法及系统 | |
CN110688126A (zh) | 一种大数据平台部署方法及装置 | |
CN110673942A (zh) | 一种云平台的异步进程结束方法、装置及云平台服务器 | |
CN117827976A (zh) | 一种批量作业运行处理方法及装置 | |
CN110673901B (zh) | 一种虚拟设备的识别方法、装置及其设备 | |
CN114004580B (zh) | 服务器生产周期时间管理的方法、系统、设备及可读介质 | |
CN114511234B (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 |