[发明专利]定时任务触发方法、装置、设备及可读存储介质在审
申请号: | 201711245327.5 | 申请日: | 2017-11-30 |
公开(公告)号: | CN107894919A | 公开(公告)日: | 2018-04-10 |
发明(设计)人: | 陈睿;夏召波 | 申请(专利权)人: | 中国平安财产保险股份有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/50;H04L29/08;G06F17/30 |
代理公司: | 深圳市世纪恒程知识产权代理事务所44287 | 代理人: | 胡海国 |
地址: | 518000 广东省深圳市福*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 定时 任务 触发 方法 装置 设备 可读 存储 介质 | ||
技术领域
本发明涉及计算机技术领域,尤其涉及一种定时任务触发方法、装置、设备及可读存储介质。
背景技术
目前,在集群部署的服务器处理定时任务过程中,如若采用spring quartz进行定时任务的处理或者通过配置文件进行定时任务的配置,会存在高并发或者重复触发定时任务的问题。高并发或者重复触发即是多个服务器处理同一定时任务的现象,这在一定程度上会造成资源的浪费,尽管现有技术中,可将定时任务绑定在一个服务器节点进行触发,但是单点定时任务风险高,可能造成定时任务未及时触发的技术问题。
发明内容
本发明的主要目的在于提供一种定时任务触发方法、装置、设备及可读存储介质,旨在解决现有定时任务触发过程不可靠的技术问题。
为实现上述目的,本发明提供一种定时任务触发方法,所述定时任务触发方法包括:
当检测到业务定时任务的触发指令时,获取所述业务ID号,并获取所述定时任务的ID号;
基于所述业务ID号与所述定时任务ID号,在redis数据库查找目标键值,并对该目标键值执行incr命令,以获取返回值;
获取定时任务ID号对应的定时任务触发规则,基于所述返回值与定时任务触发规则,确认再次触发定时任务的触发时机。
可选地,所述在redis数据库查找目标键值,并对该目标键值执行incr命令,以获取返回值步骤包括:
在redis数据库查找目标键值,当所述目标键值不存在时,对所述目标键值进行初始化处理;
对所述初始化处理后的目标键值执行incr命令,以获取返回值。
可选地,所述基于所述返回值与定时任务触发规则,确认再次触发定时任务的触发时机步骤之后包括:
基于所述业务ID号与所述定时任务ID号,在redis数据库中对应生成定时任务表,该定时任务表中存储所述定时任务与该定时任务的目标处理服务器之间的绑定关系;
实时检测所述定时任务表,以将再次触发的定时任务加载至所述目标处理服务器中,以供所述目标处理服务器创建执行定时任务指令,以执行定时任务。
可选地,所述定时任务触发方法应用于分布式集群部署系统中,所述实时检测所述定时任务表,以将再次触发的定时任务加载至所述目标处理服务器中步骤之后包括:
若检测到所述目标处理服务器宕机时,则将所述定时任务发送给其它处理服务器,以供其它处理服务器处理对应的定时任务。
可选地,所述基于所述业务ID号与所述定时任务ID号,在redis数据库中对应生成定时任务表步骤之后包括:
若检测到所述定时任务终止执行指令时,将所述redis数据库中对应定时任务表的任务状态更改为终止状态。
可选地,所述定时任务触发方法应用于分布式集群部署系统中,所述定时任务触发规则包括取模算法规则,所述基于所述返回值与定时任务触发规则,确认再次触发定时任务的触发时机步骤包括:
获取分布式集群部署系统中配置的集群数目,对所述返回值与集群数目进行余计算处理,以获取模值;
当所述模值为预设值时,确认再次触发定时任务。
可选地,所述当所述模值为预设值时,确认再次触发定时任务步骤包括:
当所述模值为零时,确认再次触发定时任务。
此外,为实现上述目的,本发明还提供一种定时任务触发装置,所述定时任务触发装置包括:
第一获取模块,用于当检测到业务定时任务的触发指令时,获取所述业务ID号,并获取所述定时任务的ID号;
第二获取模块,用于基于所述业务ID号与所述定时任务ID号,在redis数据库查找目标键值,并对该目标键值执行incr命令,以获取返回值;
确认模块,用于获取定时任务ID号对应的定时任务触发规则,基于所述返回值与定时任务触发规则,确认再次触发定时任务的触发时机。
可选地,所述第二获取模块包括:
初始化子模块,用于在redis数据库查找目标键值,当所述目标键值不存在时,对所述目标键值进行初始化处理;
第一获取子模块,用于对所述初始化处理后的目标键值执行incr命令,以获取返回值。
可选地,所述定时任务触发装置还包括:
生成模块,用于基于所述业务ID号与所述定时任务ID号,在redis数据库中对应生成定时任务表,该定时任务表中存储所述定时任务与该定时任务的目标处理服务器之间的绑定关系;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国平安财产保险股份有限公司,未经中国平安财产保险股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711245327.5/2.html,转载请声明来源钻瓜专利网。