[发明专利]一种基于Redis的分布式集群下的定时任务管理方法及装置在审
申请号: | 201911003752.2 | 申请日: | 2019-10-22 |
公开(公告)号: | CN110737526A | 公开(公告)日: | 2020-01-31 |
发明(设计)人: | 耿洪杰;王颖康;谢屈强;张雷 | 申请(专利权)人: | 上海思询信息科技有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 31332 上海互顺专利代理事务所(普通合伙) | 代理人: | 余毅勤 |
地址: | 200011 上海*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 任务执行队列 监听程序 应用程序 读取 定时任务信息 监听 定时器 定时任务处理 定时器触发 分布式集群 启动定时器 发送定时 任务触发 任务管理 放入 集群 队列 应用 写入 | ||
本发明提供一种基于Redis的分布式集群下的定时任务管理方法及装置,应用于定时任务处理技术领域,所述方法包括:至少一个应用程序发送定时任务;任务监听程序获取定时任务信息,并根据定时任务的类型进行定时任务与定时器的处理,并在所述任务监听程序的定时器触发时,将该定时任务写入redis任务执行队列;应用程序监听redis任务执行队列,并根据队列的抢占特性,读取并消费所述redis任务执行队列中的定时任务。应用本发明实施例,旨在通过任务监听程序读取所有的定时任务信息并分别启动定时器,在定时任务触发时将定时任务放入redis任务执行队列等待被消费,集群中的应用程序都会监听此redis任务执行队列,消费到任务就会去执行此任务。
技术领域
本发明涉及定时任务处理技术领域,特别是涉及一种基于Redis的分布式集群下的定时任务管理方法及装置。
背景技术
定时任务系统一种按照指定的周期策略,定时或周期性执行任务的业务系统。
传统的定是任务是通过配置约定,应用程序启动时会读取配置,根据配置里的定时任务信息启动定时器,配置里定时任务变更后,需要重启应用程序重新读取定时任务信息。随着业务量的增长,程序通常会实行集群的方式部署,也会有大量的定时任务需要运行,对于任何定时任务的变更,需要修改各个集群中里配置中的定时任务信息,整个集群里的应用程序都需要重新启动,并且每个应用程序都会读取定时任务,会有任务会重复执行的缺点。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种基于Redis的分布式集群下的定时任务管理方法及装置,旨在通过任务监听程序读取所有的定时任务信息并分别启动定时器,在定时任务触发时将定时任务放入redis任务执行队列等待被消费,集群中的应用程序都会监听此redis任务执行队列,消费到任务就会去执行此任务。
为实现上述目的及其他相关目的,本发明提供一种基于Redis的分布式集群下的定时任务管理方法,所述方法包括:
至少一个应用程序发送定时任务;
任务监听程序获取定时任务信息,并根据定时任务的类型进行定时任务与定时器的处理,并在所述任务监听程序的定时器触发时,将该定时任务写入redis任务执行队列;
应用程序监听redis任务执行队列,并根据队列的抢占特性,读取并消费所述redis任务执行队列中的定时任务。
一种实现方式中,所述至少一个应用程序发送定时任务的步骤,包括:
每一个应用程序在确定定时任务是创建定时任务时,将定时任务发送至redis新增任务队列;
每一个应用程序在确定定时任务是创删除定时任务时,将定时任务发送至redis删除任务队列;
每一个应用程序在确定定时任务是创删修改时任务时,将定时任务发送至redis修改任务队列。
一种实现方式中,所述任务监听程序获取定时任务信息,并根据定时任务的类型进行定时任务与定时器的处理的步骤,包括:
任务监听程序获取定时任务信息;
在确定定时任务是创建定时任务时,为该需创建的定时任务设置定时器;
或者;
在确定定时任务是删除定时任务时,删除与该定时任务所对应的定时器;
或者;
在确定定时任务是修改定时任务时,与该定时任务所对应的定时器,并根据当前修改后到定时任务信息创建动新的定时器。
一种实现方式中,所述至少一个应用程序发送定时任务的步骤,包括:
至少一个应用程序发送定时任务至数据库;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海思询信息科技有限公司,未经上海思询信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911003752.2/2.html,转载请声明来源钻瓜专利网。