一种执行定时任务的方法及系统技术方案

技术编号:18398153 阅读:75 留言:0更新日期:2018-07-08 19:11
本发明专利技术涉及任务调度领域,尤其涉及一种执行定时任务的方法及系统。本发明专利技术通过预设定时任务配置数据表;从所述定时任务配置数据表中获取一定时任务配置项;所述定时任务配置项包括一个进程名、两个以上定时器名、及各定时器的配置信息;所述定时器名和进程中相应操作的名称对应;当与所述一定时任务配置项对应的定时器到达预设的时间点时,调用相应的进程执行定时任务。实现通过单个进程即可周期性执行多个定时任务,提高系统资源的利用率。

【技术实现步骤摘要】
一种执行定时任务的方法及系统
本专利技术涉及任务调度领域,尤其涉及一种执行定时任务的方法及系统。
技术介绍
任务计划是操作系统的任务计划程序,它可以配置定时定点处理某些程序及批处理脚本等功能。现有技术为在程序的层面上配置定时器执行定时任务。由于进程是程序的一次运行,因此需创建多个进程分别执行不同的定时任务,而无法在单个进程内执行多个定时任务。当某个程序需要同时执行多个定时任务时,系统的资源利用率低。
技术实现思路
本专利技术所要解决的技术问题是:提供一种执行定时任务的方法及系统,实现单进程可执行多个定时任务,提高系统的资源利用率。为了解决上述技术问题,本专利技术采用的技术方案为:本专利技术提供一种执行定时任务的方法,包括:S1、预设定时任务配置数据表;S2、从所述定时任务配置数据表中获取一定时任务配置项;所述定时任务配置项包括一个进程名、两个以上定时器名、及各定时器的配置信息;所述定时器名和进程中相应操作的名称对应;S3、当与所述一定时任务配置项对应的定时器到达预设的时间点时,调用相应的进程执行定时任务。本专利技术还提供一种执行定时任务的系统,包括:预设模块,用于预设定时任务配置数据表;获取模块,用于从所述定时任务配置数据表中获取一定时任务配置项;所述定时任务配置项包括一个进程名、两个以上定时器名、及各定时器的配置信息;所述定时器名和进程中相应操作的名称对应;调用模块,用于当与所述一定时任务配置项对应的定时器到达预设的时间点时,调用相应的进程执行定时任务。本专利技术的有益效果在于:本专利技术通过为一个进程配置多个定时器,所配置的定时器名与进程中执行一特定操作的事件函数的名称对应,当定时器到达预设的时间点时,可根据定时器名调用进程中对应的事件函数执行与该定时器相应的操作,实现单个进程执行多个定时任务,提高了系统资源的利用率。附图说明图1为本专利技术一种执行定时任务的方法的具体实施方式的流程框图;图2为本专利技术一种执行定时任务的系统的具体实施方式的结构框图;标号说明:1、预设模块;2、获取模块;3、调用模块;4、保存模块。具体实施方式为详细说明本专利技术的
技术实现思路
、所实现目的及效果,以下结合实施方式并配合附图予以说明。本专利技术最关键的构思在于:通过为一个进程配置多个定时器,实现单个进程实现多个定时任务,提高系统资源的利用率。如图1所示,本专利技术提供一种执行定时任务的方法,包括:S1、预设定时任务配置数据表;S2、从所述定时任务配置数据表中获取一定时任务配置项;所述定时任务配置项包括一个进程名、两个以上定时器名、及各定时器的配置信息;所述定时器名和进程中相应操作的名称对应;S3、当与所述一定时任务配置项对应的定时器到达预设的时间点时,调用相应的进程执行定时任务。进一步地,还包括:预设第二进程实时获取并保存所述定时任务的执行结果至与所述一定时任务配置项对应的日志数据表。由上述描述可知,进程是程序的一次运行,随着程序的关闭而消亡,因此,现有技术中进程的相关信息无法持久化存储。通过预设第二进程实时获取定时任务的执行结果并保存至数据库的日志数据表中,可持久化保存定时任务的执行情况,当重新启动由于意外关闭的程序时,可根据日志数据表恢复定时任务计划,提高程序的健壮性。进一步地,还包括:根据所述定时任务配置项创建两个以上第一定时器;添加所述第一定时器至预设的定时器对象池。由上述描述可知,通过预设的定时器对象池可统一管理定时器,提高对不同定时任务的定时器管理的效率。进一步地,还包括:预设的第一进程实时监控所述定时任务配置数据表,得到监控数据;当所述监控数据为更新操作时,所述第一进程更新所述定时器对象池。由上述描述可知,实现可在运行态修改定时任务的配置信息,提高系统的稳定性。如对于金融、通信类等实时性要求较高的且较为庞大的系统,重新启动程序所需的时间较长,会造成重大影响。进一步地,根据所述定时任务配置项创建两个以上第一定时器,具体为:获取所述定时任务配置项中的进程名对应的进程所在的第一主机名;获取预设的关联表;所述关联表包括与本机建立通信连接的主机名;判断所述第一主机名是否存在于所述关联表中,若是,则创建与所述定时任务配置项相应的第一定时器;添加所述第一定时器至本机中预设的定时器对象池。由上述描述可知,实现定时器可周期性地直接控制执行相应进程中的特定操作,从而提高定时任务的执行效率。进一步地,还包括:预设两个以上第一进程实时监控所述定时任务配置数据表,得到监控数据;所述两个以上第一进程分别部署于集群中不同的节点;当所述监控数据为更新操作时,所述第一进程更新所述定时器对象池;预设两个以上第二进程实时获取并保存所述定时任务的执行结果至与所述一定时任务配置项对应的日志数据表。由上述描述可知,通过预设两个以上用于管理定时器的进程,可将用于管理定时器的进程进行分布式部署,降低进程间的耦合性,提高系统并发运行的能力。进一步地,当所述监控数据为更新操作时,所述第一进程更新所述定时器对象池,具体为:当所述更新操作为添加新的定时任务配置项时,所述第一进程创建与所述新的定时任务配置项相应的第二定时器,并将所述第二定时器添加至所述定时器对象池;当所述更新操作为删除一定时任务配置项时,所述第一进程从所述定时器对象池中删除与所述一定时任务配置项相应的第三定时器;当所述更新操作为修改一定时任务配置项时,所述第一进程修改与所述一定时任务配置项相应的第四定时器。进一步地,当所述更新操作为修改一定时任务配置项时,所述第一进程修改与所述一定时任务配置项相应的第四定时器,具体为:若所述更新操作为修改一所述定时任务配置项中一所述定时器的配置信息,则所述第一进程根据一所述定时器的配置信息修改相应的第四定时器的参数;若所述更新操作为删除一定时任务配置项中的一所述定时器名,则所述第一进程从所述定时器对象池中删除对应的第四定时器;若所述更新操作为添加一所述定时器名及与所述定时器名对应的定时器的配置信息至一所述定时任务配置项中,则:创建与所述定时器名相应的第四定时器;根据所述定时器名绑定所述第四定时器与相应的操作;根据所述配置信息配置所述第四定时器;添加所述第四定时器至所示定时器对象池。由上述描述可知,当定时任务配置数据表更新时,可根据更新的数据实时修改对应的定时器。如图2所示,本专利技术还提供一种执行定时任务的系统,包括:预设模块1,用于预设定时任务配置数据表;获取模块2,用于从所述定时任务配置数据表中获取一定时任务配置项;所述定时任务配置项包括一个进程名、两个以上定时器名、及各定时器的配置信息;所述定时器名和进程中相应操作的名称对应;调用模块3,用于当与所述一定时任务配置项对应的定时器到达预设的时间点时,调用相应的进程执行定时任务。进一步地,还包括:保存模块4,用于预设第二进程实时获取并保存所述定时任务的执行结果至与所述一定时任务配置项对应的日志数据表。由上述描述可知,通过本专利技术提供的一种执行定时任务的系统可通过单个进程实现多个定时任务,提高系统资源的利用率。本专利技术的实施例一为:S1、预设定时任务配置数据表;从所述定时任务配置数据表中获取一定时任务配置项;所述定时任务配置项包括一个进程名、两个以上定时器名、及各定时器的配置信息;所述定时器名和进程中相应操作的名称对应;其中,在项目对应的数据库中新建定时任务本文档来自技高网
...

【技术保护点】
1.一种执行定时任务的方法,其特征在于,包括:S1、预设定时任务配置数据表;S2、从所述定时任务配置数据表中获取一定时任务配置项;所述定时任务配置项包括一个进程名、两个以上定时器名、及各定时器的配置信息;所述定时器名和进程中相应操作的名称对应;S3、当与所述一定时任务配置项对应的定时器到达预设的时间点时,调用相应的进程执行定时任务。

【技术特征摘要】
1.一种执行定时任务的方法,其特征在于,包括:S1、预设定时任务配置数据表;S2、从所述定时任务配置数据表中获取一定时任务配置项;所述定时任务配置项包括一个进程名、两个以上定时器名、及各定时器的配置信息;所述定时器名和进程中相应操作的名称对应;S3、当与所述一定时任务配置项对应的定时器到达预设的时间点时,调用相应的进程执行定时任务。2.根据权利要求1所述的执行定时任务的方法,其特征在于,还包括:预设第二进程实时获取并保存所述定时任务的执行结果至与所述一定时任务配置项对应的日志数据表。3.根据权利要求1所述的执行定时任务的方法,其特征在于,还包括:根据所述定时任务配置项创建两个以上第一定时器;添加所述第一定时器至预设的定时器对象池。4.根据权利要求3所述的执行定时任务的方法,其特征在于,还包括:预设的第一进程实时监控所述定时任务配置数据表,得到监控数据;当所述监控数据为更新操作时,所述第一进程更新所述定时器对象池。5.根据权利要求3所述的执行定时任务的方法,其特征在于,根据所述定时任务配置项创建两个以上第一定时器,具体为:获取所述定时任务配置项中的进程名对应的进程所在的第一主机名;获取预设的关联表;所述关联表包括与本机建立通信连接的主机名;判断所述第一主机名是否存在于所述关联表中,若是,则创建与所述定时任务配置项相应的第一定时器;添加所述第一定时器至本机中预设的定时器对象池。6.根据权利要求3所述的执行定时任务的方法,其特征在于,还包括:预设两个以上第一进程实时监控所述定时任务配置数据表,得到监控数据;所述两个以上第一进程分别部署于集群中不同的节点;当所述监控数据为更新操作时,所述第一进程更新所述定时器对象池;预设两个以上第二进程实时获取并保存所述定时任务的执行结果至与所述一定时任务配置项对应的日志数据表。7.根据权利要求3所述的执行定时任务的方法,其特征在于,当所述监控数据为...

【专利技术属性】
技术研发人员:刘德建林琛伍张发
申请(专利权)人:福建省天奕网络科技有限公司
类型:发明
国别省市:福建,35

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1