一种任务执行方法、装置、设备及存储介质与流程

文档序号:32599903发布日期:2022-12-17 15:05阅读:66来源:国知局
一种任务执行方法、装置、设备及存储介质与流程

1.本发明实施例涉及计算机技术领域,尤其涉及一种任务执行方法、装置、设备及存储介质。


背景技术:

2.随着科技业务的发展,客户数据量与日俱增,客户信息详细程度逐步完善,存在较大部分客户数据需要进行批量信息同步。
3.现有的分布式调度方法存在如下问题:1.现有分布式调度方法任务触发策略较为单一(仅包括:cron表达式触发、固定间隔触发、延时触发、父子任务触发等)且cron表达式存在一定的学习成本。2.现有分布式任务调度方法中的模型分为单任务模型以及父子任务模型,任务的执行一般为顺序执行或者需要通过较为复杂的代码开发才能实现不同场景下的子任务组合执行。


技术实现要素:

4.本发明实施例提供一种任务执行方法、装置、设备及存储介质,通过增加模板实现简单灵活的子任务组合执行,能够在减少开发人力成本的基础上,满足更加复杂的业务场景需要。
5.根据本发明的一方面,提供了一种任务执行方法,包括:
6.根据第一策略生成主任务;
7.获取所述主任务对应的目标模板和目标参数,并根据所述目标模板和所述目标参数生成执行指令;
8.根据所述执行指令执行所述主任务。
9.根据本发明的另一方面,提供了一种任务执行装置,该任务执行装置包括:
10.任务生成模块,用于根据第一策略生成主任务;
11.获取模块,用于获取所述主任务对应的目标模板和目标参数,并根据所述目标模板和所述目标参数生成执行指令;
12.执行模块,用于根据所述执行指令执行所述主任务。
13.根据本发明的另一方面,提供了一种电子设备,所述电子设备包括:
14.至少一个处理器;以及
15.与所述至少一个处理器通信连接的存储器;其中,
16.所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的任务执行方法。
17.根据本发明的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的任务执行方法。
18.本发明实施例通过根据第一策略生成主任务;获取所述主任务对应的目标模板和目标参数,并根据所述目标模板和所述目标参数生成执行指令;根据所述执行指令执行所述主任务,实现简单灵活的子任务组合执行,能够在减少开发人力成本的基础上,满足更加复杂的业务场景需要。
19.应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
附图说明
20.为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
21.图1是本发明实施例中的一种任务执行方法的流程图;
22.图2是本发明实施例中的备份清洗任务处理实施流程图;
23.图3是本发明实施例中的导出数据任务处理实施流程图;
24.图4是本发明实施例中的数据同步任务处理实施流程图;
25.图5是本发明实施例中的联机批量任务处理实施流程图;
26.图6是本发明实施例中的缓存同步任务处理实施流程图;
27.图7是本发明实施例中的任务触发流程图;
28.图8是本发明实施例中的任务分配流程图;
29.图9是本发明实施例中的一种任务执行装置的结构示意图;
30.图10是本发明实施例中的一种电子设备的结构示意图。
具体实施方式
31.为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
32.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
33.实施例一
34.图1为本发明实施例提供的一种任务执行方法的流程图,本实施例可适用于任务执行的情况,该方法可以由本发明实施例中的任务执行装置来执行,该装置可采用软件和/
或硬件的方式实现,如图1所示,该方法具体包括如下步骤:
35.s110,根据第一策略生成主任务。
36.其中,所述第一策略可以为固定时间策略、文件发现策略、前置依赖策略以及延时策略中的至少一种。第一策略的获取方式可以为:获取策略集合,所述策略集合包括:固定时间策略、文件发现策略、前置依赖策略以及延时策略中的至少一种;将所述策略集合中优先级最高的策略确定为第一策略。
37.具体的,根据所述第一策略生成主任务的方式可以为:获取所述第一策略携带的任务标识;根据所述任务标识生成主任务。
38.可选的,根据第一策略生成主任务,包括:
39.获取所述第一策略携带的任务标识;
40.根据所述任务标识生成主任务。
41.其中,所述第一策略携带的任务标识可以为主任务id,也可以为其他任务标识,本发明实施例对此不进行限制。
42.具体的,根据所述任务标识生成主任务的方式可以为:根据主任务id初始化主任务。
43.s120,获取所述主任务对应的目标模板和目标参数,并根据所述目标模板和所述目标参数生成执行指令。
44.其中,所述目标模板包括:备份清理模板、导出数据模板、数据同步模板、缓存同步模板以及联机批量模板中的任一种。若所述目标模板为备份清理模板,则目标参数包括:源文件名、目标文件名、源文件路径、目标文件路径以及保留时间中至少一种。若目标模板为导出数据模板,则目标参数包括:目标文件编码、目标文件名、查询语句、目标导出字段、执行线程数量以及目标地址中的至少一种。若目标模板为数据同步模板,则目标参数包括:源文件名和/或源文件中的数据标识。若目标模块为联机批量模板,则目标参数包括:源文件名称、开发规则校验代码、端口号、待下载的文件名、文件路径、下载协议、源文件名称、文件编码、线程数以及批处理行数中的至少一种。若目标模板为缓存同步模板,则目标参数包括:源文件名、缓存标注类转换器名称以及线程数中的至少一种。
45.具体的,获取所述主任务对应的目标模板和目标参数的方式可以为:获取所述主任务对应的目标任务类型;根据所述目标任务类型查询模板列表,得到所述目标任务类型对应的目标模板;根据所述主任务确定目标参数。
46.具体的,根据所述目标模板和所述目标参数生成执行指令的方式可以为:在将所述目标参数填入所述目标模板的对应位置之后,得到目标文本,根据目标文本生成执行一个执行指令。
47.可选的,获取所述主任务对应的目标模板和目标参数,包括:
48.获取所述主任务对应的目标任务类型;
49.根据所述目标任务类型查询模板列表,得到所述目标任务类型对应的目标模板;
50.获取预先配置的所述主任务对应的目标参数。
51.其中,所述获取所述主任务对应的目标任务类型的方式可以为:根据主任务的标识信息确定主任务对应的目标任务类型,例如可以是,若第一策略携带的任务id为任务id1,则根据任务id1生成主任务,并根据任务id1确定主任务对应的目标任务类型。
52.其中,所述模板列表包括:每种任务类型对应的模板,例如可以是,任务类型a对应模板a,任务类型b对应模板b,任务类型c对应模板c。
53.具体的,获取预先配置的所述主任务对应的目标参数的方式可以为:获取开发人员预先配置的目标参数。
54.s130,根据所述执行指令执行所述主任务。
55.具体的,根据所述执行指令执行所述主任务的方式可以为:获取目标任务类型对应的目标可执行任务数量和目标任务类型对应的正在执行任务数量;根据所述目标任务类型对应的目标可执行任务数量和目标任务类型对应的正在执行任务数量确定目标任务类型对应的待分配任务数量;获取第二策略;根据所述第二策略、目标任务类型对应的待分配任务数量以及所述执行指令执行所述主任务。
56.可选的,所述目标模板包括:备份清理模板、导出数据模板、数据同步模板、缓存同步模板以及联机批量模板中的至少一种。
57.可选的,根据所述执行指令执行所述主任务,包括:
58.获取第二策略;
59.根据所述第二策略、目标任务类型对应的待分配任务数量以及所述执行指令执行所述主任务。
60.其中,所述第二策略为策略集合中优先级低于第一策略的其他策略,所述第二策略可以包括至少一个策略。获取第二策略的方式可以为:获取策略集合,其中,所述策略集合包括:固定时间策略、文件发现策略、前置依赖策略以及延时策略中的至少一种;将所述策略集合中优先级最高的策略确定为第一策略;将所述策略集合中除第一策略外的其他策略确定为第二策略。
61.其中,所述目标任务类型对应的待分配任务数量的确定方式可以为:获取目标任务类型对应的目标可执行任务数量和目标任务类型对应的正在执行任务数量;根据所述目标任务类型对应的目标可执行任务数量和目标任务类型对应的正在执行任务数量确定目标任务类型对应的待分配任务数量。
62.具体的,根据所述第二策略、目标任务类型对应的待分配任务数量以及所述执行指令执行所述主任务的方式可以为:根据目标任务类型对应的待分配任务数量和第二策略分配执行器,控制执行器指向所述执行指令。
63.可选的,还包括:
64.获取至少一种任务类型对应的目标可执行任务数量和至少一种任务类型对应的正在执行任务数量;
65.根据所述至少一种任务类型对应的目标可执行任务数量和至少一种任务类型对应的正在执行任务数量确定每种任务类型对应的待分配任务数量。
66.其中,所述目标可执行任务数量为每种任务类型对应的最大可执行任务数量。所述正在执行任务数量为状态为正在执行的任务的数量。所述每种任务类型对应的待分配任务数量为每种任务类型对应的最大可分配任务数量。
67.具体的,根据所述至少一种任务类型对应的目标可执行任务数量和至少一种任务类型对应的正在执行任务数量确定每种任务类型对应的待分配任务数量的方式可以为:将每种任务类型对应的目标可执行任务数量和正在执行任务数量的差值确定为每种任务类
型对应的待分配任务数量。
68.需要说明的是,若正在执行的任务数量小于目标可执行任务数量,则可以进行任务分配,若正在执行的任务数量大于或者等于目标可执行任务数量,则不再接收任务分配。
69.可选的,获取第二策略包括:
70.获取策略集合,其中,所述策略集合包括:固定时间策略、文件发现策略、前置依赖策略以及延时策略中的至少一种;
71.将所述策略集合中优先级最高的策略确定为第一策略;
72.将所述策略集合中除第一策略外的其他策略确定为第二策略。
73.其中,所述固定时间策略为固定日期固定时间区间的策略,包括:任务初始化信息维护任务类型(包括:日/月/季度/年等)和任务执行时间区间(任务类型日批时为时分-时分,任务类型月批时为日时分-日时分,任务类型为季度批时为月日时分-月日十分,任务类型为年批时为季月日时分-季月日时分),例如可以是,固定时间策略为当满足时间要求时,初始化一条主任务。
74.其中,文件发现策略为任务初始化信息维护任务类型为文件发现触发类型,例如可以是,件发现策略为依据配置的文件发现路径,文件名称正则表达式,当文件以及信号文件送达后,初始化一条主任务信息。
75.其中,前置依赖策略包括:任务初始化信息维护前置依赖任务id,例如可以是,前置依赖策略为优先判断前置依赖任务是否完成,前置依赖完成后,初始化一条主任务。其中,前置依赖任务的获取方式可以为:获取第一策略携带的前置依赖任务的标识信息,根据前置依赖任务的标识信息确定前置依赖任务,获取前置依赖任务的状态信息,若前置依赖任务完成,则初始化主任务。
76.其中,延时策略包括:任务初始化信息维护任务类型(包括日/月/季度/年等)、任务执行时间区间(格式依据任务类型日批时为时分-时分,任务类型月批时为日时分-日时分,任务类型为季度批时为月日时分-月日十分,任务类型为年批时为季月日时分-季月日时分)以及任务延时时长。例如可以是,延时策略为发现满足时间后,延时配置时长后,初始化一条主任务。
77.以上四种策略支持组合执行,组合执行时,按优先级优先执行第一条策略(第一策略)并初始化主任务,其余策略下沉到主任务信息中作为任务分配策略(第二策略)使用,策略优先级如下:文件发现策略》固定日期固定时间区间策略》延时策略》前置依赖策略。
78.可选的,获取所述主任务对应的目标模板和目标参数,包括:
79.根据所述主任务的标识信息获取备份清理模板;
80.根据主任务确定备份清理参数,其中,所述备份清理参数包括:源文件名、目标文件名、源文件路径、目标文件路径以及保留时间中至少一种。
81.例如可以是,若第一策略为固定时间策略,则根据固定时间触发生成备份清理主任务;根据备份清理任务执行器可用配额数量进行任务分配;根据备份清理任务的标识信息获取备份清理模板,其中,备份清理任务中的文件移动、文件重命名、文件压缩、文件清理等均由模板类实现,开发者只需在开发配置模板中配置上具体的待备份目录、备份目标目录、文件需要保留的天数等目标参数,即可快速完成开发。
82.可选的,获取所述主任务对应的目标模板和目标参数,包括:
83.根据所述主任务的标识信息获取导出数据模板;
84.根据主任务确定导出数据参数,其中,所述导出数据参数包括:目标文件编码、目标文件名、查询语句、目标导出字段、执行线程数量以及目标地址中的至少一种。
85.例如可以是,若第一策略为固定时间策略,则固定时间触发生成导出数据主任务。根据导出数据主任务执行器可用配额数量以及任务分配策略进行任务分配。
86.其中,所述导出数据模板包括:导出数据子模板和文件上载任务子模板。
87.其中,导出数据主任务中数据库查询、文件生成、文件合并等由导出数据子模板实现,开发者只需在开发配置模板中配置上查询sql、文件编码、导数具体字段、文件名以及执行线程数等,即可完成开发;
88.同时导出数据模板支持扩展,开发者只用开发较少的业务处理逻辑替换或修改模板自带的sql执行逻辑,即可实现例如文件数据筛选等其他导数功能;
89.其中,文件上载任务子模板包含一个文件传输执行器,该执行器可定制,目前包含ftp执行器以及文件传输接口执行器,业务开发者只需配置文件名以及具体的执行器名即可完成开发。
90.可选的,获取所述主任务对应的目标模板和目标参数,包括:
91.根据所述主任务的标识信息获取数据同步模板;
92.根据主任务确定数据同步参数,其中,所述数据同步参数包括:源文件名和/或源文件中的数据标识。
93.其中,所述数据同步模板包括:文件比较任务子模板、文件排序任务子模板、文件标准化任务子模板以及文件入库子模板中的至少一种。文件比较任务子模板的作用为通过每日获取到的全量源文件,比对得到增量数据文件,供后续逻辑使用。文件比较任务子模板依赖一个可配置的源文件数据模型,通过二分法对源文件进行切割,并行比较切割后的文件,计算出新增/修改/删除的数据,最终合并文件,产生每日增量文件。开发者只需配置源文件数据模型、文件比较模板的源文件名以及单行数据的比较key值(唯一标识一行数据),即可完成开发;
94.文件排序任务子模板(可选子模板),提供根据key值(希望排序的字段)正序/倒序的功能,文件解析/切割逻辑同文件比较任务模板中的规则相同。发者只需配置源文件数据模型、文件排序模板的源文件名以及单行数据的排序key值,即可完成开发;
95.文件标准化任务子模板,用于将源文件数据标注化成可以入库的数据,供后续逻辑使用。文件标准化任务子模板依赖源文件数据模型以及数据转换模型,数据转换模型依赖转换器,转换器可定制,内置的转换器包含等价转换、前后缀拼接转换、拼接转换、日期转换等。开发者只需配置文件标准化模板的源文件名、新增数据转换模型配置即可完成标准化;
96.文件入库子模板,用于将标准化的文件解析入库。文件入库子模板依赖一个入库适配器,开发者只需配置文件入库模板,指定适配器以及源文件(源文件必须是标准化后的文件)即可完成开发。
97.例如可以是,若第一策略为文件发现策略,则根据文件发现触发生成数据同步主任务。根据任务分配策略,如:延迟触发和前置任务触发等,以及数据同步任务执行器可用配额数量进行任务分配。
98.可选的,获取所述主任务对应的目标模板和目标参数,包括:
99.根据主任务的标识信息获取联机批量模板;
100.根据主任务确定联机批量参数,其中,所述联机批量参数包括:源文件名称、开发规则校验代码、端口号、待下载的文件名、文件路径、下载协议、源文件名称、文件编码、线程数以及批处理行数中的至少一种。
101.其中,所述联机批量模板包括:规则校验任务子模板、导出数据子模板、文件上载任务子模板、通讯接口任务子模板、文件下载任务子模板以及数据入库任务子模板中的至少一种。
102.规则校验任务模板依赖一个可配置的源文件数据模型,用于校验任务数据的合法性并为后续的入库提供筛选。开发者只需配置源文件名称以及开发规则校验代码即可完成该步骤开发,校验结果将用于后续代码逻辑;
103.导出数据子模板支持扩展,开发者只用开发较少的业务处理逻辑替换或修改模板自带的sql执行逻辑,即可实现例如文件数据筛选等其他导数功能(同上文所述的导出数据子模板)。
104.文件上载任务子模板包含一个文件传输执行器,该执行器可定制,目前包含ftp执行器以及文件传输接口执行器,业务开发者只需配置文件名以及具体的执行器名即可完成开发。
105.通讯接口任务子模板对接外系统通讯接口,用于通知外系统触发批量任务或其他需要通讯接口通知的场景。该模板依赖一个通讯接口服务类,该服务类支持定制,目前支持webservice/http类接口。
106.文件下载任务子模板包含一个文件传输执行器,该执行器可定制,目前包含ftp执行器以及文件传输接口执行器,业务开发者只需配置待下载的文件名、文件路径以及具体的执行器名即可完成开发。
107.数据入库任务子模板提供数据的批量入库功能,同时提供历史数据异步记录功能。开发者只需配置该模板的源文件名称、文件编码、线程数、批处理行数以及其他必要依赖项,即可完成开发。
108.例如可以是,通过联机接口和/或批量任务接口接收文件名以及文件等,若第一策略为文件发现策略,则根据文件发现触发生成联机批量主任务。根据任务分配策略,如:延迟触发和前置任务触发等,以及联机批量任务执行器可用配额数量进行任务分配。
109.可选的,获取所述主任务对应的目标模板和目标参数,包括:
110.根据所述主任务的标识信息获取缓存同步模板;
111.根据主任务确定缓存同步参数,其中,所述缓存同步参数包括:源文件名、缓存标注类转换器名称以及线程数中的至少一种。
112.其中,所述缓存同步模板包括:导出数据子模板和缓存同步任务子模板,所述导出数据子模板和上文所述的导出数据子模板相同。缓存同步任务子模板用于同步数据库数据到redis缓存。模板依赖一个redis缓存标准类转换器,该转换器可定制,用于保存数据库模型到redis模型的映射关系。开发者只需配置该模板的源文件名、缓存标注类转换器名称、线程数即可完成开发。
113.例如可以是,若第一策略为文件发现策略,则根据固定时间触发生成任务。根据任
务分配策略,如:延迟触发、前置任务触发等,以及缓存同步执行器可用配额数量进行任务分配。
114.在一个具体的例子中,本发明实施例提供了一种任务调度系统,所述任务调度系统包括:任务触发模块、任务分配模块以及任务执行模块。如图2所示,图2为备份清洗任务处理实施流程图,任务触发模块扫描初始化任务表,若触发策略达成,则初始化主任务。任务分配模块扫描待分配任务,若满足执行条件,则分配执行器。任务执行模块进行文件备份/压缩,源文件删除。如图3所示,图3为导出数据任务处理实施流程图,任务触发模块扫描初始化任务表,若触发策略达成,则初始化主任务。任务分配模块扫描待分配任务,若满足执行条件,则分配执行器。任务执行模块进行数据导出(从数据库导出到文件或者从文件导出到文件),文件合并(可选步骤,仅当存在多个结果文件时需要进行文件合并),文件上传。如图4所示,图4为数据同步任务处理实施流程图,任务触发模块扫描初始化任务表,若触发策略达成,则初始化主任务。任务分配模块扫描待分配任务,若满足执行条件,则分配执行器。任务执行模块进行文件比对(可选步骤,仅在获取到全量文件时需要文件比对)、文件标准化以及文件入库。如图5所示,图5为联机批量任务处理实施流程图,任务触发模块扫描初始化任务表,若触发策略达成,则初始化主任务。任务分配模块扫描待分配任务,若满足执行条件,则分配执行器。任务执行模块进行规则检验,数据导出(导出符合开户条件的数据),若结果文件为空,则数据导出(所有开户信息以及开户结果信息),文件上传(回传开户来源),过程数据清理。若结果文件非空,则文件上载(其他需要同步开户的系统),文件下载(其他系统开户结果),下载成功,则开户信息入户,若下载失败,则重新进行文件下载,若重试仍然失败,则更新开户结果。如图6所示,图6为缓存同步任务处理实施流程图,任务触发模块扫描初始化任务表,若触发策略达成,则初始化主任务。任务分配模块扫描待分配任务,若满足执行条件,则分配执行器。任务执行模块进行数据导出,同步缓存。如图7所示,图7为任务触发流程图,任务触发模块扫描初始化任务表,判断是否为多触发策略,若是,则取出主触发策略(第一策略),对其余触发策略进行辅策略下沉,得到任务分配策略,基于主触发策略判断是否满足触发条件,若满足,则初始主任务。若非多触发策略,则判断是否满足触发条件,若满足,则初始化主任务。任务分配模块基于任务分配策略分配执行器。如图8所示,图8为任务分配流程图,任务分配模块扫描待分配任务,若执行器可用配额充足,则根据任务分配策略(图8中的任务分配策略包括:固定时间策略、延时策略以及前置依赖策略)分配执行器。
115.在另一个具体的例子中,任务触发模块,用于根据任务触发策略生成主任务供任务分配模块处理。任务分配模块用于针对每一个待分配任务,依据任务执行器可用配额数量与当前正在执行的任务数计算任务最大可用配额数量,进而确定待分配的主任务个数,同时,结合任务分配策略,确定具体分配的任务,成功分配到任务执行器的任务进入待执行状态;任务分配模块管理并维护所有任务执行器信息,任务执行器的上下线、任务的处理状态均通过内部通讯接口由任务执行器主动告知任务分配模块,同时任务分配模块与任务执行器之间维持心跳,周期性检查任务执行器状态。任务执行模块用于执行所获取到的任务,生成子任务,并主动告知任务分配模块任务的执行结果状态,同时,任务执行模块通过全局异常拦截提供多个子任务之间的动态组合执行。任务分配策略为任务触发模块下沉的任务触发策略。任务分配模块维护所有的任务执行器信息,包括任务执行器id、任务执行器正在
执行任务数、任务执行可用配额数等,任务分配模块被动接收任务执行模块传递过来的任务状态信息并维护,同时,任务分配模块与任务执行模块执行器之间维持心跳,周期性探测执行器状态。
116.在另一个具体的例子中,任务触发模块根据单个任务的触发策略(如单个任务有多个触发策略,以优先级最高的任务触发策略触发,其余触发策略下沉为任务分配策略)初始化主任务,主任务初始化后进入待分配状态;任务分配模块,扫描所有待分配状态的主任务,依据目标任务类型对应的待分配任务数量与待分配主任务的任务分配策略(通过任务触发下沉过来的其余策略)分配具体的执行器,被分配的主任务进入待执行状态,同时,任务分配模块用于维护任务执行器的执行任务数,当执行任务数小于任务执行器可用配额数量时可进行任务分配,当执行任务数大于等于任务执行器可用配额数量时该执行器不再接收任务分配;任务执行模块,用于生成对应的子任务,执行具体的主任务,同时,负责将任务的执行状态回填给任务分配模块。
117.本发明实施例通过预制开发模板的方式,达到一次开发多次使用的目的。目前,已通过预制开发模板的方法,实现文件移动/复制/重命名、文件上传/下载、webservice通讯接口调用、文件拆分/比对/合并、数据库批量查询/维护等功能,同时,通过全局异常处理方法实现子任务的动态组合执行。
118.本实施例的技术方案,通过根据第一策略生成主任务;获取所述主任务对应的目标模板和目标参数,并根据所述目标模板和所述目标参数生成执行指令;根据所述执行指令执行所述主任务,实现简单灵活的子任务组合执行,能够在减少开发人力成本的基础上,满足更加复杂的业务场景需要。
119.实施例二
120.图9为本发明实施例提供的一种任务执行装置的结构示意图。本实施例可适用于任务执行的情况,该装置可采用软件和/或硬件的方式实现,该装置可集成在任何提供任务执行功能的设备中,如图9所示,所述任务执行装置具体包括:任务生成模块210、获取模块220和执行模块230。
121.其中,任务生成模块,用于根据第一策略生成主任务;
122.获取模块,用于获取所述主任务对应的目标模板和目标参数,并根据所述目标模板和所述目标参数生成执行指令;
123.执行模块,用于根据所述执行指令执行所述主任务。
124.上述产品可执行本发明任意实施例所提供的方法,具备执行方法相应的功能模块和有益效果。
125.本实施例的技术方案,通过根据第一策略生成主任务;获取所述主任务对应的目标模板和目标参数,并根据所述目标模板和所述目标参数生成执行指令;根据所述执行指令执行所述主任务,实现简单灵活的子任务组合执行,能够在减少开发人力成本的基础上,满足更加复杂的业务场景需要。
126.实施例三
127.图10示出了可以用来实施本发明的实施例的电子设备10的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形
式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
128.如图10所示,电子设备10包括至少一个处理器11,以及与至少一个处理器11通信连接的存储器,如只读存储器(rom)12、随机访问存储器(ram)13等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器11可以根据存储在只读存储器(rom)12中的计算机程序或者从存储单元18加载到随机访问存储器(ram)13中的计算机程序,来执行各种适当的动作和处理。在ram 13中,还可存储电子设备10操作所需的各种程序和数据。处理器11、rom 12以及ram 13通过总线14彼此相连。输入/输出(i/o)接口15也连接至总线14。
129.电子设备10中的多个部件连接至i/o接口15,包括:输入单元16,例如键盘、鼠标等;输出单元17,例如各种类型的显示器、扬声器等;存储单元18,例如磁盘、光盘等;以及通信单元19,例如网卡、调制解调器、无线通信收发机等。通信单元19允许电子设备10通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
130.处理器11可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器11的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。处理器11执行上文所描述的各个方法和处理,例如任务执行方法。
131.在一些实施例中,任务执行方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元18。在一些实施例中,计算机程序的部分或者全部可以经由rom 12和/或通信单元19而被载入和/或安装到电子设备10上。当计算机程序加载到ram 13并由处理器11执行时,可以执行上文描述的任务执行方法的一个或多个步骤。备选地,在其他实施例中,处理器11可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行任务执行方法。
132.本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、负载可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
133.用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
134.在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算
机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
135.为了提供与用户的交互,可以在电子设备上实施此处描述的系统和技术,该电子设备具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给电子设备。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
136.可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)、区块链网络和互联网。
137.计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与vps服务中,存在的管理难度大,业务扩展性弱的缺陷。
138.应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。
139.上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1