CN110597611A - 任务调度方法及装置 - Google Patents
任务调度方法及装置 Download PDFInfo
- Publication number
- CN110597611A CN110597611A CN201910889072.9A CN201910889072A CN110597611A CN 110597611 A CN110597611 A CN 110597611A CN 201910889072 A CN201910889072 A CN 201910889072A CN 110597611 A CN110597611 A CN 110597611A
- Authority
- CN
- China
- Prior art keywords
- task
- task information
- information
- configuration file
- flow
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种任务调度方法,包括:当接收到用户配置的任务调度表时,获取任务调度表中包含的各个任务信息;依据配置规则对各个任务信息进行验证;当对各个所述任务信息验证通过时,依据每个所述任务信息携带的关联标识,将各个任务信息组成至少一个任务流;对于每个任务流,依据该任务流中包含的各个任务信息,生成与该任务流对应的配置文件;确定每个配置文件的调用顺序,依据调用顺序调用每个配置文件,以执行与任务调度表对应的任务操作。能基于各个任务流的任务信息生成各个配置文件,调用各个配置文件以执行与所述任务调度表对应的任务操作,避免每次任务调度时都进行硬编码,有效的降低了代码错误的风险,提升了***开发的效率。
Description
技术领域
本发明涉及程序开发技术领域,特别涉及一种任务调度方法及装置。
背景技术
随着信息科技的发展,网络技术已经广泛的应用在各个领域中,例如,应用在银行业中。为了满足银行的业务场景的需求,在程序开发过程中,需要确定该业务场景对应的各个任务,依据各个任务的执行次序及各个任务间的执行关系执行相应的任务,能实现该业务场景的各个功能。
现有技术中,需要技术人员通过硬编码的方式来实现任务的调整,然而,为了提高银行业务的运转效率及提升用户的服务质量,往往需要频繁的对业务场景进行调整,每次对业务场景进行调整时,都需要对该业务场景下的各个任务的执行次序及任务间的执行关系进行调整,即每次调整业务场景时,都需要通过技术人员编写代码的方式来进行任务调度,容易造成编码不严谨而导致的风险,且***开发效率低下。
发明内容
本发明所要解决的技术问题是提供一种任务调度方法,能够基于各个任务流中的任务信息生成各个配置文件,并调用各个配置文件以执行与所述任务调度表对应的任务操作,避免每次任务调用时都进行硬编码,有效的降低了代码错误的风险,提升了***开发的效率。
本发明还提供了一种任务调度装置,用以保证上述方法在实际中的实现及应用。
一种任务调度方法,包括:
当接收到用户配置的任务调度表时,获取所述任务调度表中包含的各个任务信息;
依据预先设置的配置规则对各个所述任务信息进行验证;
当对各个所述任务信息验证通过时,依据每个所述任务信息携带的关联标识,将各个所述任务信息组成至少一个任务流;所述关联标识为与所述任务信息存在关联关系的目标任务信息的身份标识;
对于每个所述任务流,依据所述任务流中包含的各个所述任务信息,生成与所述任务流对应的配置文件;
确定每个所述配置文件的调用顺序,依据所述调用顺序调用每个所述配置文件,以执行与所述任务调度表对应的任务操作。
上述的方法,可选的,所述依据预先设置的配置规则对各个所述任务信息进行验证,包括:
解析所述配置规则,以确定每个所述任务信息的检验字段;
判断每个所述任务信息的检验字段是否存在合法值;
若每个所述任务信息的检验字段均存在合法值,则确定对各个所述任务信息验证通过;
否则,对各个所述任务信息验证不通过。
上述的方法,可选的,所述依据每个所述任务信息携带的关联标识,将各个所述任务信息组成至少一个任务流,包括:
依据各个所述任务信息携带的关联标识,确定各个关联任务信息集合,其中,所述关联任务信息集合中包含具有关联关系的各个任务信息;
依据各个所述任务信息携带的关联标识表征的状态信息,确定每个关联任务信息集合中的各个所述任务信息的任务优先级,其中,若所述状态信息表征为依赖状态,则确定任务信息的任务优先级低于目标任务信息,若所述关联标识的状态信息为被依赖状态,则确定任务信息的任务优先级高于目标任务信息;
对于每个所述关联任务信息集合,按所述任务优先级将所述关联任务信息集合中的各个任务信息组成任务流。
上述的方法,可选的,依据所述任务流中包含的各个所述任务信息,生成与所述任务流对应的配置文件,包括:
获取所述任务流中的各个所述任务信息包含的身份标识及变更标识;
确定各个所述变更标识对应的变更类型;
基于所述身份标识及所述变更类型,确定每个所述任务信息对应的代码模块;
对各个所述代码模块进行编译,以生成每个所述任务信息的子配置文件;
依据所述任务优先级将各个所述子配置文件组成配置文件。
上述的方法,可选的,所述依据所述调用顺序调用每个所述配置文件,以执行与所述任务调度表对应的任务操作,包括:
对于每个所述任务流,获取所述任务流中的各个所述任务信息包含的变更时间,在各个所述变更时间中将与当前时刻最为接近的变更时间确定为目标变更时间;
对各个所述任务流的目标变更时间进行排序,以确定各个任务流的调用顺序;
基于所述调用顺序调用各个所述配置文件,其中,在调用每个所述配置文件的过程中,确定与当前调用的配置文件对应的数据库,基于所述配置文件配置所述数据库中的数据。
一种任务调度装置,包括:
接收单元,用于当接收到用户配置的任务调度表时,获取所述任务调度表中包含的各个任务信息;
验证单元,用于依据预先设置的配置规则对各个所述任务信息进行验证;
执行单元,用于当对各个所述任务信息验证通过时,依据每个所述任务信息携带的关联标识,将各个所述任务信息组成至少一个任务流;所述关联标识为与所述任务信息存在关联关系的目标任务信息的身份标识;
生成单元,用于对于每个所述任务流,依据所述任务流中包含的各个所述任务信息,生成与所述任务流对应的配置文件;
调用单元,用于确定每个所述配置文件的调用顺序,依据所述调用顺序调用每个所述配置文件,以执行与所述任务调度表对应的任务操作。
上述的任务调度装置,可选的,所述验证单元,包括:
解析子单元,用于解析所述配置规则,以确定每个所述任务信息的检验字段;
判断子单元,用于判断每个所述任务信息的检验字段是否存在合法值;
验证子单元,用于当每个所述任务信息的检验字段均存在合法值时,确定对各个所述任务信息验证通过,否则,对各个所述任务信息验证不通过。
上述的任务调度装置,可选的,所述执行单元,包括:
第一确定子单元,用于依据各个所述任务信息携带的关联标识,确定各个关联任务信息集合,其中,所述关联任务信息集合中包含具有关联关系的各个任务信息;
第二确定子单元,用于依据各个所述任务信息携带的关联标识表征的状态信息,确定每个关联任务信息集合中的各个所述任务信息的任务优先级,其中,若所述状态信息表征为依赖状态,则确定任务信息的任务优先级低于目标任务信息,若所述关联标识的状态信息为被依赖状态,则确定任务信息的任务优先级高于目标任务信息;
第一执行子单元,对于每个所述关联任务信息集合,按所述任务优先级将所述关联任务信息集合中的各个任务信息组成任务流。
上述的任务调度装置,可选的,其特征在于,所述生成单元,包括:
第一获取子单元,用于获取所述任务流中的各个所述任务信息包含的身份标识及变更标识;
第三确定子单元,用于确定各个所述变更标识对应的变更类型;
第四确定子单元,用于依据所述身份标识及所述变更类型,确定每个所述任务信息对应的代码模块;
编译子单元,用于对各个所述代码模块进行编译,以生成每个所述任务信息的子配置文件;
第二执行子单元,用于依据所述任务优先级将各个所述子配置文件组成配置文件。
上述的任务调度装置,可选的,所述调用单元,包括:
第二获取子单元,对于每个所述任务流,获取所述任务流中的各个所述任务信息包含的变更时间,在各个所述变更时间中将与当前时刻最为接近的变更时间确定为目标变更时间;
第五确定子单元,用于对各个所述任务流的目标变更时间进行排序,以确定各个任务流的调用顺序;
调用子单元,用于依据所述调用顺序调用各个所述配置文件,其中,在调用每个所述配置文件的过程中,确定与当前调用的配置文件对应的数据库,基于所述配置文件配置所述数据库中的数据。
与现有技术相比,本发明包括以下优点:
本发明提供了一种任务调度方法,包括:当接收到用户配置的任务调度表时,获取所述任务调度表中包含的各个任务信息;依据预先设置的配置规则对各个所述任务信息进行验证;当对各个所述任务信息验证通过时,依据每个所述任务信息携带的关联标识,将各个所述任务信息组成至少一个任务流;所述关联标识为与所述任务信息存在关联关系的目标任务信息的身份标识;对于每个所述任务流,依据所述任务流中包含的各个所述任务信息,生成与所述任务流对应的配置文件;确定每个所述配置文件的调用顺序,依据所述调用顺序调用每个所述配置文件,以执行与所述任务调度表对应的任务操作。应用本发明实施例提供的方法,能够基于各个任务流中的任务信息生成各个配置文件,并调用各个配置文件以执行与所述任务调度表对应的任务操作,避免每次任务调用时都进行硬编码,有效的降低了代码错误的风险,提升了***开发的效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种任务调度方法的方法流程图;
图2为本发明提供的一种任务调度方法的又一方法流程图;
图3为本发明提供的一种任务调度方法的又一方法流程图;
图4为本发明提供的一种任务调度方法的又一方法流程图;
图5为本发明提供的一种任务调度装置的结构示意图;
图6为本发明提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明可用于众多通用或专用的计算装置环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器装置、包括以上任何装置或设备的分布式计算环境等等。
本发明实施例提供了一种任务调度方法,该方法可以应用在多种***平台,其执行主体可以为计算机终端或各种移动设备的处理器,所述方法的方法流程图如图1所示,具体包括:
S101:当接收到用户配置的任务调度表时,获取所述任务调度表中包含的各个任务信息。
本发明实施例提供的方法中,用户可以通过可视化页面配置任务调度表;该任务调度表中可以包含多个任务信息;该每个任务信息包含任务的身份标识、任务的中文名称、任务的英文名称、变更时间、变更标识及关联标识等。
本发明实施例提供的方法中,通过该变更标识,可确定该任务为数据删除任务、数据增加任务或数据更改任务。
本发明实施例提供的方法中,通过对该任务调度表进行解析,可以获取该任务调度表中的各个任务信息。
本发明实施例提供的方法中,该任务调度表的类型可以为EXCEL表。
S102:依据预先设置的配置规则对各个所述任务信息进行验证。
本发明实施例提供的方法中,依据预先设置的配置规则对各个所述任务信息进行完整性验证,即判断每个所述任务信息是否完整。
本发明实施例提供的方法中,当至少一个任务信息验证未通过时,确定各个验证未通过的任务信息的身份标识,基于该身份标识生成提示信息反馈至用户,以提示用户验证失败,并使用户依据该提示信息对所述任务调度表进行修改。
S103:当对各个所述任务信息验证通过时,依据每个所述任务信息携带的关联标识,将各个所述任务信息组成至少一个任务流;所述关联标识为与所述任务信息存在关联关系的目标任务信息的身份标识。
本发明实施例提供的方法中,关联标识可以为一个或多个,通过该关联标识,可以确定任务信息及目标任务信息之间存在关联关系,基于该关联关系可以确定任务信息及目标任务信息之间的任务优先级。
本发明实施例提供的方法中,将具有关联关系的任务信息组成一个任务流。
本发明实施例提供的方法中,目标任务信息为该任务调度表中的任务信息。
S104:对于每个所述任务流,依据所述任务流中包含的各个所述任务信息,生成与所述任务流对应的配置文件。
本发明实施例提供的方法中,该配置文件可以为脚本文件或XML配置文件。
本发明实施例提供的方法中,基于任务流中的各个所述任务信息之间的关联关系,确定该任务流中各个任务信息之间的任务优先级。按任务流中各个任务信息的任务优先级,依据任务流中各个所述任务信息生成配置文件。
本发明实施例提供的方法中,可以基于各个任务信息的变更标识及身份标识生成配置文件。
S105:确定每个所述配置文件的调用顺序,依据所述调用顺序调用每个所述配置文件,以执行与所述任务调度表对应的任务操作。
本发明实施例提供的方法中,依据各个任务信息中包含的变更时间信息,确定各个任务流的调用顺序。
本发明实施例提供的任务调度方法,包括:当接收到用户配置的任务调度表时,获取所述任务调度表中包含的各个任务信息;依据预先设置的配置规则对各个所述任务信息进行验证;当对各个所述任务信息验证通过时,依据每个所述任务信息携带的关联标识,将各个所述任务信息组成至少一个任务流;所述关联标识为与所述任务信息存在关联关系的目标任务信息的身份标识;对于每个所述任务流,依据所述任务流中包含的各个所述任务信息,生成与所述任务流对应的配置文件;确定每个所述配置文件的调用顺序,依据所述调用顺序调用每个所述配置文件,以执行与所述任务调度表对应的任务操作。应用本发明实施例提供的方法,能够基于各个任务流中的任务信息生成各个配置文件,并调用各个配置文件以执行与所述任务调度表对应的任务操作,避免每次任务调用时都进行硬编码,有效的降低了代码错误的风险,提升了***开发的效率。
本发明实施例提供的方法中,基于上述的实施过程,具体的,所述对各个所述任务信息进行验证的过程,如图2所示,可以包括:
S201:解析所述配置规则,以确定每个所述任务信息的检验字段。
本发明实施例提供的方法中,通过解析所述配置规则,可获取该配置规则中包含的各个验证条件信息;每个验证条件信息可以对应一个检验字段。
本发明实施例提供的方法中,针对于每一个任务信息,检测该任务信息中的身份标识字段、任务的中文名称字段、任务的英文名称字段、变更时间字段、变更标识字段及关联标识字段等以上一个或多个,以判断该任务信息是否满足该配置规则。
S202:判断每个所述任务信息的检验字段是否均存在合法值,若是,则执行步骤S203,若否,则执行步骤S204。
本发明实施例提供的方法中,每个所述任务信息均包含一个或多个检验字段,合法值表征该检验字段中包含的值满足与其对应的验证条件信息。
本发明实施例提供的方法,若检验任务信息中的关联标识字段,则在该关联标识字段中,检测是否存在关联标识,若存在,则确定该标识标识对应的目标任务信息;检测所述任务调度表中是否存在该目标任务信息,若存在,则确定该关联标识字段存在合法值,若不存在,则该关联标识字段不存在合法值。
S203:对各个所述任务信息验证通过。
本发明实施例提供的方法中,当每个任务信息的各个检验字段均符合验证条件信息时,确定对各个任务信息验证通过。
S204:对各个所述任务信息验证不通过。
本发明实施例提供的方法中,若任一检验字段中包含的值不满足与其对应的验证条件信息,则确定对该任务信息验证不通过,若对至少一个任务信息验证不通过,则确定验证不通过的任务信息的身份标识,基于各个身份标识生成验证失败提示信息,发送至用户,以提示用户基于该身份标识对任务调度表进行修改。
本发明实施例提供的方法中,基于上述的实施过程,具体的,所述依据每个所述任务信息携带的关联标识,将各个所述任务信息组成至少一个任务流,包括:
依据各个所述任务信息携带的关联标识,确定各个关联任务信息集合,其中,所述关联任务信息集合中包含具有关联关系的各个任务信息;
依据各个所述任务信息携带的关联标识表征的状态信息,确定每个关联任务信息集合中的各个所述任务信息的任务优先级,其中,若所述状态信息表征为依赖状态,则确定任务信息的任务优先级低于目标任务信息,若所述关联标识的状态信息为被依赖状态,则确定任务信息的任务优先级高于目标任务信息;
对于每个所述关联任务信息集合,按所述任务优先级将所述关联任务信息集合中的各个任务信息组成任务流。
本发明实施例提供的方法中,基于各个所述关联标识的状态信息,该状态信息用于表征任务信息及目标任务信息之间的关联关系,即任务优先级,若所述关联标识的状态信息为依赖状态,则确定该任务信息的任务优先级低于目标任务信息。若所述关联标识的状态信息为被依赖状态,则确定该任务信息的任务优先级高于所述目标任务信息。
本发明实施例提供的方法中,所述依据每个所述任务信息携带的关联标识,将各个所述任务信息组成至少一个任务流的过程,还可以为:
基于各个所述关联标识,判断各个所述任务信息的之间是否存在关联关系;
将具有关联关系的任务信息组成任务流。
本发明实施例提供的方法中,任务流中的各个任务信息的任务优先级,可以由变更时间进行确定。
本发明实施例提供的方法中,可以按变更时间由先至后的顺序,确定任务流中各个任务信息的任务优先级,变更时间离当前时刻越近,则任务优先级越高。
本发明实施例提供的方法中,基于上述的实施过程,具体的,依据所述任务流中包含的各个所述任务信息,生成与所述任务流对应的配置文件,如图3所示,可以包括:
S301:获取所述任务流中的各个所述任务信息包含的身份标识及变更标识。
本发明实施例提供的方法中,每个所述任务信息均包含身份标识及变更标识。
S302:确定各个所述变更标识对应的变更类型。
本发明实施例提供的方法中,该变更类型可以为数据增加类型、数据删除类型或数据更改类型。
本发明实施例提供的方法中,可选的,每个任务信息对应一种变更类型。
S303:基于所述身份标识及所述变更类型,确定每个所述任务信息对应的代码模块。
本发明实施例提供的方法中,通过确定任务信息的身份标识及变更类型,即可确定该任务信息对应的代码模块,该代码模块为预先配置的代码模块。
本发明实施例提提供的方法中,一种身份标识及一种变更类型,可以确定一个代码模块。
S304:对各个所述代码模块进行编译,以生成每个所述任务信息的子配置文件。
本发明实施例提供的方法中吗,每个任务信息对应一个代码模块,通过对每个代码模块进行编译,可以生成每个所述任务信息的配置文件。
S305:依据所述任务优先级将各个所述子配置文件组成配置文件。
本发明实施例提供的方法中,基于任务流中的各个任务信息的任务优先级,将各个子配置文件组成配置文件。
本发明实施例提供的方法中,可以任务优先级可以由任务流中的各个任务信息的变更时间进行确定,也可以由任务流中的各个任务信息的关联标识进行确定。
本发明实施例提供的方法中,通过确定每个所述任务信息对应的预先设置的代码模块,并对各个代码模块进行编译,通过这样的方式,当需要切换业务场景时,无需重新编写代码,可以有效的避免代码出错的情况,也大大提高的技术人员的***维护效率。
本发明实施例提供的方法中,基于上述的实施过程,具体的,所述依据所述调用顺序调用每个所述配置文件,以执行与所述任务调度表对应的任务操作,如图4所示,可以包括:
S401:对于每个所述任务流,获取所述任务流中的各个所述任务信息包含的变更时间,在各个所述变更时间中将与当前时刻最为接近的变更时间确定为目标变更时间。
本发明实施例的方法中,每个任务信息均包含变更时间,该变更时间可以表征任务的生效时间。
本发明实施例提供的方法,可以通过比较各个所述变更时间与当前时刻的接近程度,并将与当前时刻最接近的变更时间确定为目标变更时间。
S402:对各个所述任务流的目标变更时间进行排序,以确定各个任务流的调用顺序。
本发明实施例提供的方法中,以当前时刻为基准,按时间的先后顺序,对各个目标变更时间进行排序,依据各个目标变更时间的顺序确定各个任务流的顺序,即目标变更时间与当前时刻越接近,则该目标变更时间对应的任务流优先级越高。
S403:基于所述调用顺序调用各个所述配置文件,其中,在调用每个所述配置文件的过程中,确定与当前调用的配置文件对应的数据库,基于所述配置文件配置所述数据库中的数据。
本发明实施例提供的方法中,调用每个所述配置文件时,确定与当前调用的配置文件对应的数据库;基于所述配置文件配置所述数据库中的数据。
本发明实施例提供的方法中,每个配置文件配置可以配置相同或不同的数据库。
本发明实施例提供的方法中,获取与当前调用的配置文件对应的数据库的地址信息;基于该地址信息与该数据库建立通信连接,执行该配置文件,可以通过该通信连接配置所述数据库中的数据。
本发明实施例提供的方法中,基于配置文件配置数据库中的数据的过程,可以为,在数据库与该配置文件对应待配置数据,解析该配置文件得到该配置文件对应的配置操作,该配置操作可以为增加数据、删除数据或修改数据等,基于该配置操作配置该待配置数据。
本发明实施例提供的任务调度方法,可以应用于多个领域中,下面进行举例说明:
预先为数据库的各个操作所需的执行代码进行封装,假设在一个业务场景下需要实现多个业务功能,确定每个执行功能所需的执行代码,确定调用该执行代码所需的任务信息,当需要对业务场景下的业务功能进行调整时,用户可以在可视化页面,配置各个任务信息,任务信息可以包括任务的身份标识、任务的中文名称、任务的英文名称、变更时间、关联标识、变更标识及任务修改人信息等等,该变更标识可以表征该任务为数据删除任务、数据增加任务或数据更改任务;当接收到用户的配置完成指令时,解析该配置完成指令,得到到用户配置的任务调度表,获取任务调度表中包含的各个任务信息;依据预先设置的配置规则对各个任务信息进行验证;当对各个任务信息验证通过时,依据每个任务信息携带的关联标识,将各个任务信息组成至少一个任务流;关联标识为与所述任务信息存在关联关系的目标任务信息的身份标识;对于每个任务流,依据该任务流中包含的各个任务信息,调用每个任务信息对应的代码模块生成与该任务流对应的配置文件;确定每个所述配置文件的调用顺序,依据所述调用顺序调用每个所述配置文件,以执行与所述任务调度表对应的任务操作。通过确定每个所述任务信息对应的预先设置的代码模块,并对各个代码模块进行编译,通过这样的方式,当需要切换业务场景时,无需重新编写代码,可以有效的避免代码出错的情况,也大大提高的技术人员的***维护效率。
上述各个具体的实现方式,及各个实现方式的衍生过程,均在本发明保护范围内。
与图1所述的方法相对应,本发明实施例还提供了一种任务调度装置,用于对图1中方法的具体实现,本发明实施例提供的任务调度装置可以应用计算机终端或各种移动设备中,其结构示意图如图5所示,具体包括:
接收单元501,用于当接收到用户配置的任务调度表时,获取所述任务调度表中包含的各个任务信息;
验证单元502,用于依据预先设置的配置规则对各个所述任务信息进行验证;
执行单元503,用于当对各个所述任务信息验证通过时,依据每个所述任务信息携带的关联标识,将各个所述任务信息组成至少一个任务流;所述关联标识为与所述任务信息存在关联关系的目标任务信息的身份标识;
生成单元504,用于对于每个所述任务流,依据所述任务流中包含的各个所述任务信息,生成与所述任务流对应的配置文件;
调用单元505,用于确定每个所述配置文件的调用顺序,依据所述调用顺序调用每个所述配置文件,以执行与所述任务调度表对应的任务操作。
本发明实施例提供的任务调度装置,通过接收到用户配置的任务调度表时,获取所述任务调度表中包含的各个任务信息;依据预先设置的配置规则对各个所述任务信息进行验证;当对各个所述任务信息验证通过时,依据每个所述任务信息携带的关联标识,将各个所述任务信息组成至少一个任务流;所述关联标识为与所述任务信息存在关联关系的目标任务信息的身份标识;对于每个所述任务流,依据所述任务流中包含的各个所述任务信息,生成与所述任务流对应的配置文件;确定每个所述配置文件的调用顺序,依据所述调用顺序调用每个所述配置文件,以执行与所述任务调度表对应的任务操作。应用本发明实施例提供的任务调度装置,能够基于各个任务流中的任务信息生成各个配置文件,并调用各个配置文件以执行与所述任务调度表对应的任务操作,避免每次任务调用时都进行硬编码,有效的降低了代码错误的风险,提升了***开发的效率。
本发明实施例提供的任务调度装置中,所述验证单元502,包括:
解析子单元,用于解析所述配置规则,以确定每个所述任务信息的检验字段;
判断子单元,用于判断每个所述任务信息的检验字段是否存在合法值;
验证子单元,用于当每个所述任务信息的检验字段均存在合法值时,确定对各个所述任务信息验证通过,否则,对各个所述任务信息验证不通过。
本发明实施例提供的任务调度装置中,所述执行单元503,包括:
第一确定子单元,用于依据各个所述任务信息携带的关联标识,确定各个关联任务信息集合,其中,所述关联任务信息集合中包含具有关联关系的各个任务信息;
第二确定子单元,用于依据各个所述任务信息携带的关联标识表征的状态信息,确定每个关联任务信息集合中的各个所述任务信息的任务优先级,其中,若所述状态信息表征为依赖状态,则确定任务信息的任务优先级低于目标任务信息,若所述关联标识的状态信息为被依赖状态,则确定任务信息的任务优先级高于目标任务信息;
第一执行子单元,对于每个所述关联任务信息集合,按所述任务优先级将所述关联任务信息集合中的各个任务信息组成任务流。
本发明实施例提供的任务调度装置中,所述生成单元504,包括:
第一获取子单元,用于获取所述任务流中的各个所述任务信息包含的身份标识及变更标识;
第三确定子单元,用于确定各个所述变更标识对应的变更类型;
第四确定子单元,用于依据所述身份标识及所述变更类型,确定每个所述任务信息对应的代码模块;
编译子单元,用于对各个所述代码模块进行编译,以生成每个所述任务信息的子配置文件;
第二执行子单元,用于依据所述任务优先级将各个所述子配置文件组成配置文件。
本发明实施例提供的任务调度装置中,所述调用单元505,包括:
第二获取子单元,对于每个所述任务流,获取所述任务流中的各个所述任务信息包含的变更时间,在各个所述变更时间中将与当前时刻最为接近的变更时间确定为目标变更时间;
第五确定子单元,用于对各个所述任务流的目标变更时间进行排序,以确定各个任务流的调用顺序;
调用子单元,用于依据所述调用顺序调用各个所述配置文件,其中,在调用每个所述配置文件的过程中,确定与当前调用的配置文件对应的数据库,基于所述配置文件配置所述数据库中的数据。
本发明实施例还提供了一种存储介质,所述存储介质包括存储的指令,其中,在所述指令运行时控制所述存储介质所在的设备执行上述任务调度方法。
本发明实施例还提供了一种电子设备,其结构示意图如图6所示,具体包括存储器601,以及一个或者一个以上的指令602,其中一个或者一个以上指令602存储于存储器601中,且经配置以由一个或者一个以上处理器603执行所述一个或者一个以上指令602进行以下操作:
当接收到用户配置的任务调度表时,获取所述任务调度表中包含的各个任务信息;
依据预先设置的配置规则对各个所述任务信息进行验证;
当对各个所述任务信息验证通过时,依据每个所述任务信息携带的关联标识,将各个所述任务信息组成至少一个任务流;所述关联标识为与所述任务信息存在关联关系的目标任务信息的身份标识;
对于每个所述任务流,依据所述任务流中包含的各个所述任务信息,生成与所述任务流对应的配置文件;
确定每个所述配置文件的调用顺序,依据所述调用顺序调用每个所述配置文件,以执行与所述任务调度表对应的任务操作。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本发明时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上对本发明所提供的一种任务调度方法及装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种任务调度方法,其特征在于,包括:
当接收到用户配置的任务调度表时,获取所述任务调度表中包含的各个任务信息;
依据预先设置的配置规则对各个所述任务信息进行验证;
当对各个所述任务信息验证通过时,依据每个所述任务信息携带的关联标识,将各个所述任务信息组成至少一个任务流;所述关联标识为与所述任务信息存在关联关系的目标任务信息的身份标识;
对于每个所述任务流,依据所述任务流中包含的各个所述任务信息,生成与所述任务流对应的配置文件;
确定每个所述配置文件的调用顺序,依据所述调用顺序调用每个所述配置文件,以执行与所述任务调度表对应的任务操作。
2.根据权利要求1所述的方法,其特征在于,所述依据预先设置的配置规则对各个所述任务信息进行验证,包括:
解析所述配置规则,以确定每个所述任务信息的检验字段;
判断每个所述任务信息的检验字段是否存在合法值;
若每个所述任务信息的检验字段均存在合法值,则确定对各个所述任务信息验证通过;
否则,对各个所述任务信息验证不通过。
3.根据权利要求1所述的方法,其特征在于,所述依据每个所述任务信息携带的关联标识,将各个所述任务信息组成至少一个任务流,包括:
依据各个所述任务信息携带的关联标识,确定各个关联任务信息集合,其中,所述关联任务信息集合中包含具有关联关系的各个任务信息;
依据各个所述任务信息携带的关联标识表征的状态信息,确定每个关联任务信息集合中的各个所述任务信息的任务优先级,其中,若所述状态信息表征为依赖状态,则确定任务信息的任务优先级低于目标任务信息,若所述关联标识的状态信息为被依赖状态,则确定任务信息的任务优先级高于目标任务信息;
对于每个所述关联任务信息集合,按所述任务优先级将所述关联任务信息集合中的各个任务信息组成任务流。
4.根据权利要求3所述的方法,其特征在于,依据所述任务流中包含的各个所述任务信息,生成与所述任务流对应的配置文件,包括:
获取所述任务流中的各个所述任务信息包含的身份标识及变更标识;
确定各个所述变更标识对应的变更类型;
基于所述身份标识及所述变更类型,确定每个所述任务信息对应的代码模块;
对各个所述代码模块进行编译,以生成每个所述任务信息的子配置文件;
依据所述任务优先级将各个所述子配置文件组成配置文件。
5.根据权利要求1所述的方法,其特征在于,所述依据所述调用顺序调用每个所述配置文件,以执行与所述任务调度表对应的任务操作,包括:
对于每个所述任务流,获取所述任务流中的各个所述任务信息包含的变更时间,在各个所述变更时间中将与当前时刻最为接近的变更时间确定为目标变更时间;
对各个所述任务流的目标变更时间进行排序,以确定各个任务流的调用顺序;
基于所述调用顺序调用各个所述配置文件,其中,在调用每个所述配置文件的过程中,确定与当前调用的配置文件对应的数据库,基于所述配置文件配置所述数据库中的数据。
6.一种任务调度装置,其特征在于,包括:
接收单元,用于当接收到用户配置的任务调度表时,获取所述任务调度表中包含的各个任务信息;
验证单元,用于依据预先设置的配置规则对各个所述任务信息进行验证;
执行单元,用于当对各个所述任务信息验证通过时,依据每个所述任务信息携带的关联标识,将各个所述任务信息组成至少一个任务流;所述关联标识为与所述任务信息存在关联关系的目标任务信息的身份标识;
生成单元,用于对于每个所述任务流,依据所述任务流中包含的各个所述任务信息,生成与所述任务流对应的配置文件;
调用单元,用于确定每个所述配置文件的调用顺序,依据所述调用顺序调用每个所述配置文件,以执行与所述任务调度表对应的任务操作。
7.根据权利要求6所述的任务调度装置,其特征在于,所述验证单元,包括:
解析子单元,用于解析所述配置规则,以确定每个所述任务信息的检验字段;
判断子单元,用于判断每个所述任务信息的检验字段是否存在合法值;
验证子单元,用于当每个所述任务信息的检验字段均存在合法值时,确定对各个所述任务信息验证通过,否则,对各个所述任务信息验证不通过。
8.根据权利要求6所述的任务调度装置,其特征在于,所述执行单元,包括:
第一确定子单元,用于依据各个所述任务信息携带的关联标识,确定各个关联任务信息集合,其中,所述关联任务信息集合中包含具有关联关系的各个任务信息;
第二确定子单元,用于依据各个所述任务信息携带的关联标识表征的状态信息,确定每个关联任务信息集合中的各个所述任务信息的任务优先级,其中,若所述状态信息表征为依赖状态,则确定任务信息的任务优先级低于目标任务信息,若所述关联标识的状态信息为被依赖状态,则确定任务信息的任务优先级高于目标任务信息;
第一执行子单元,对于每个所述关联任务信息集合,按所述任务优先级将所述关联任务信息集合中的各个任务信息组成任务流。
9.根据权利要求8所述的任务调度装置,其特征在于,所述生成单元,包括:
第一获取子单元,用于获取所述任务流中的各个所述任务信息包含的身份标识及变更标识;
第三确定子单元,用于确定各个所述变更标识对应的变更类型;
第四确定子单元,用于依据所述身份标识及所述变更类型,确定每个所述任务信息对应的代码模块;
编译子单元,用于对各个所述代码模块进行编译,以生成每个所述任务信息的子配置文件;
第二执行子单元,用于依据所述任务优先级将各个所述子配置文件组成配置文件。
10.根据权利要求6所述的任务调度装置,其特征在于,所述调用单元,包括:
第二获取子单元,对于每个所述任务流,获取所述任务流中的各个所述任务信息包含的变更时间,在各个所述变更时间中将与当前时刻最为接近的变更时间确定为目标变更时间;
第五确定子单元,用于对各个所述任务流的目标变更时间进行排序,以确定各个任务流的调用顺序;
调用子单元,用于依据所述调用顺序调用各个所述配置文件,其中,在调用每个所述配置文件的过程中,确定与当前调用的配置文件对应的数据库,基于所述配置文件配置所述数据库中的数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910889072.9A CN110597611B (zh) | 2019-09-19 | 2019-09-19 | 任务调度方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910889072.9A CN110597611B (zh) | 2019-09-19 | 2019-09-19 | 任务调度方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110597611A true CN110597611A (zh) | 2019-12-20 |
CN110597611B CN110597611B (zh) | 2022-08-19 |
Family
ID=68861483
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910889072.9A Active CN110597611B (zh) | 2019-09-19 | 2019-09-19 | 任务调度方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110597611B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111273962A (zh) * | 2020-02-14 | 2020-06-12 | 腾讯科技(深圳)有限公司 | 配置管理方法、装置、计算机可读存储介质和计算机设备 |
CN111291051A (zh) * | 2020-01-22 | 2020-06-16 | 中国民航信息网络股份有限公司 | 运价数据处理方法及装置、存储介质及电子设备 |
CN112579275A (zh) * | 2020-12-23 | 2021-03-30 | 苏州三六零智能安全科技有限公司 | 任务执行方法、装置、设备及存储介质 |
CN112965793A (zh) * | 2021-01-21 | 2021-06-15 | 中国互联网络信息中心 | 一种面向标识解析数据的数据仓库任务调度方法和*** |
CN116680063A (zh) * | 2023-08-03 | 2023-09-01 | 苏州浪潮智能科技有限公司 | 任务调度方法、装置、计算***、电子设备和存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008225769A (ja) * | 2007-03-12 | 2008-09-25 | Ricoh Co Ltd | ワークフロー管理システム |
CN101478431A (zh) * | 2009-02-10 | 2009-07-08 | 浪潮通信信息***有限公司 | 一种使用可视化流程进行管理的任务调度*** |
CN102867219A (zh) * | 2012-09-27 | 2013-01-09 | 乐华建科技(北京)有限公司 | 一种业务自动排程***和方法 |
CN103034554A (zh) * | 2012-12-30 | 2013-04-10 | 焦点科技股份有限公司 | 一种纠错重启以及自动判断启动的etl调度***及方法 |
CN104679482A (zh) * | 2013-11-27 | 2015-06-03 | 北京拓尔思信息技术股份有限公司 | 基于osgi的etl处理装置及方法 |
CN105630581A (zh) * | 2014-11-07 | 2016-06-01 | 南京南瑞继保电气有限公司 | 一种任务处理方法、设备及计算机存储介质 |
CN106933857A (zh) * | 2015-12-30 | 2017-07-07 | 阿里巴巴集团控股有限公司 | 一种数据仓库中任务的调度方法、装置 |
CN108845798A (zh) * | 2018-05-30 | 2018-11-20 | 安徽四创电子股份有限公司 | 一种可视化大数据任务编排框架及处理方法 |
CN109636301A (zh) * | 2018-10-16 | 2019-04-16 | 深圳壹账通智能科技有限公司 | 金融业务的工作流配置方法、***、终端及可读存储介质 |
CN110187958A (zh) * | 2019-06-04 | 2019-08-30 | 上海燧原智能科技有限公司 | 一种任务处理方法、装置、***、设备及存储介质 |
-
2019
- 2019-09-19 CN CN201910889072.9A patent/CN110597611B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008225769A (ja) * | 2007-03-12 | 2008-09-25 | Ricoh Co Ltd | ワークフロー管理システム |
CN101478431A (zh) * | 2009-02-10 | 2009-07-08 | 浪潮通信信息***有限公司 | 一种使用可视化流程进行管理的任务调度*** |
CN102867219A (zh) * | 2012-09-27 | 2013-01-09 | 乐华建科技(北京)有限公司 | 一种业务自动排程***和方法 |
CN103034554A (zh) * | 2012-12-30 | 2013-04-10 | 焦点科技股份有限公司 | 一种纠错重启以及自动判断启动的etl调度***及方法 |
CN104679482A (zh) * | 2013-11-27 | 2015-06-03 | 北京拓尔思信息技术股份有限公司 | 基于osgi的etl处理装置及方法 |
CN105630581A (zh) * | 2014-11-07 | 2016-06-01 | 南京南瑞继保电气有限公司 | 一种任务处理方法、设备及计算机存储介质 |
CN106933857A (zh) * | 2015-12-30 | 2017-07-07 | 阿里巴巴集团控股有限公司 | 一种数据仓库中任务的调度方法、装置 |
CN108845798A (zh) * | 2018-05-30 | 2018-11-20 | 安徽四创电子股份有限公司 | 一种可视化大数据任务编排框架及处理方法 |
CN109636301A (zh) * | 2018-10-16 | 2019-04-16 | 深圳壹账通智能科技有限公司 | 金融业务的工作流配置方法、***、终端及可读存储介质 |
CN110187958A (zh) * | 2019-06-04 | 2019-08-30 | 上海燧原智能科技有限公司 | 一种任务处理方法、装置、***、设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
LILLACK, MAX: "Tracking Load-Time Configuration Options", 《IEEE TRANSACTIONS ON SOFTWARE ENGINEERING》 * |
王帅: "工作流配置文件编辑***的研究与实现", 《新一代信息技术》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111291051A (zh) * | 2020-01-22 | 2020-06-16 | 中国民航信息网络股份有限公司 | 运价数据处理方法及装置、存储介质及电子设备 |
CN111273962A (zh) * | 2020-02-14 | 2020-06-12 | 腾讯科技(深圳)有限公司 | 配置管理方法、装置、计算机可读存储介质和计算机设备 |
CN111273962B (zh) * | 2020-02-14 | 2022-02-18 | 腾讯科技(深圳)有限公司 | 配置管理方法、装置、计算机可读存储介质和计算机设备 |
CN112579275A (zh) * | 2020-12-23 | 2021-03-30 | 苏州三六零智能安全科技有限公司 | 任务执行方法、装置、设备及存储介质 |
CN112965793A (zh) * | 2021-01-21 | 2021-06-15 | 中国互联网络信息中心 | 一种面向标识解析数据的数据仓库任务调度方法和*** |
CN112965793B (zh) * | 2021-01-21 | 2023-11-21 | 中国互联网络信息中心 | 一种面向标识解析数据的数据仓库任务调度方法和*** |
CN116680063A (zh) * | 2023-08-03 | 2023-09-01 | 苏州浪潮智能科技有限公司 | 任务调度方法、装置、计算***、电子设备和存储介质 |
CN116680063B (zh) * | 2023-08-03 | 2023-11-03 | 苏州浪潮智能科技有限公司 | 任务调度方法、装置、计算***、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110597611B (zh) | 2022-08-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110597611B (zh) | 任务调度方法及装置 | |
CN108520454B (zh) | 实时回调订单的方法和*** | |
CN109033772B (zh) | 一种验证信息的输入方法及装置 | |
CN108459964B (zh) | 测试用例选择方法、装置、设备以及计算机可读存储介质 | |
CN107835228B (zh) | 一种基于动态广义路由的指令处理方法及装置 | |
CN106656944B (zh) | 手持移动设备滑动验证的方法及装置 | |
WO2021114672A1 (zh) | 裸金属服务器linux***镜像生成方法、装置及设备 | |
CN110825634A (zh) | 参数质量校验方法、装置、设备及计算机可读存储介质 | |
CN110955409B (zh) | 在云平台上创建资源的方法和装置 | |
CN106055375B (zh) | 应用程序安装方法及装置 | |
CN108776587B (zh) | 数据获取方法、装置、计算机设备以及存储介质 | |
CN112232794A (zh) | 支付方法及装置、存储介质、电子设备 | |
CN111367531B (zh) | 代码处理方法及装置 | |
CN108089887B (zh) | 一种新增页面的启动控制方法及装置 | |
CN111831300A (zh) | App更新方法、装置、电子设备及计算机可读存储介质 | |
CN114327390A (zh) | 基于脚手架的微服务生成方法和装置 | |
CN111935107B (zh) | 身份认证的方法及装置、***、电子设备、存储介质 | |
CN111538530A (zh) | 页面跳转方法及***、存储介质及电子设备 | |
CN109298928B (zh) | 业务的处理方法及装置 | |
CN111538542A (zh) | 一种***配置方法及相关装置 | |
CN114661826A (zh) | 基于区块链的数据处理方法、装置及设备 | |
CN112596751A (zh) | 应用程序安装包的编译方法、终端、服务器及存储介质 | |
CN110955464A (zh) | 业务处理的方法、装置、计算机设备及存储介质 | |
CN112235255B (zh) | 一种语音数据处理方法、装置及服务端 | |
CN110780983A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |