[发明专利]一种Quartz集群定时任务处理系统及方法有效
申请号: | 201711370060.2 | 申请日: | 2017-12-19 |
公开(公告)号: | CN108255592B | 公开(公告)日: | 2020-12-08 |
发明(设计)人: | 田付强 | 申请(专利权)人: | 武汉市烽视威科技有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 北京捷诚信通专利事务所(普通合伙) 11221 | 代理人: | 王卫东 |
地址: | 430000 湖北*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 quartz 集群 定时 任务 处理 系统 方法 | ||
1.一种Quartz集群定时任务处理系统,其特征在于,包括zookeeper集群以及多个节点,多个节点形成Quartz集群,每个节点包括:
配置加载模块,其用于加载所有节点的节点信息配置和zookeeper集群连接配置,监听节点信息配置变更;
任务管理模块,其用于对其所在节点的定时任务进行注册、注销、启动和停止;
节点管理模块,其用于把所在节点的节点信息注册到zookeeper集群,通过zookeeper集群把所述节点信息同步到注册节点;
选举模块,其用于在Quartz集群无主节点的情况,选出一个新的主节点执行定时任务;
控制台模块,其用于查看所有节点的定时任务、管理定时任务和查看节点的运行状态;
Quartz集群中只存在一个主节点,所述主节点执行的定时任务为节点任务和Quartz集群任务,其他节点执行的定时任务仅为节点任务。
2.如权利要求1所述的Quartz集群定时任务处理系统,其特征在于:所述节点信息包括节点的基本信息和定时任务信息,所述节点的基本信息包括节点名称、IP、端口和权重,所述选举模块选取的新的主节点是权重最高的节点。
3.如权利要求1所述的Quartz集群定时任务处理系统,其特征在于:所述配置加载模块还用于触发定时任务重新加载,以及提供定时任务持久化到本地,供所述任务管理模块调用。
4.一种Quartz集群定时任务处理方法,其特征在于,基于zookeeper集群以及多个节点,多个所述节点形成Quartz集群,所述方法包括步骤:
多个节点依次初始化并连接zookeeper集群,每个节点都创建节点信息变更监听,向zookeeper集群注册节点信息,并获取Quartz集群中所有已注册节点的节点信息;
当Quartz集群中不存在主节点时,重新选出主节点,主节点向zookeeper集群发送同步消息,并向调度工厂注册定时任务,其余节点根据zookeeper集群同步节点信息;
当某个节点的节点信息变更时,该节点将变更信息发给zookeeper集群,其余节点从zookeeper集群中接收变更节点的节点信息并同步;同时,发生变更的节点执行所述变更相应的指令,并把变更后的定时任务持久化到本地;
Quartz集群中只存在一个主节点,当Quartz集群中不存在主节点时,选取所有注册节点中权重最高的节点为主节点,所述主节点执行的定时任务为节点任务和Quartz集群任务,其他节点执行的定时任务仅为节点任务。
5.如权利要求4所述的Quartz集群定时任务处理方法,其特征在于:每个节点初始化包括加载所有节点的节点基本信息配置和zookeeper集群连接配置,所述节点信息包括节点的基本信息和定时任务信息,所述节点的基本信息包括节点名称、IP、端口和权重。
6.如权利要求4所述的Quartz集群定时任务处理方法,其特征在于:每个节点向zookeeper集群注册该节点信息时,如果zookeeper集群存在根节点,则该节点作为增加在根节点下的子节点;如果zookeeper集群不存在根节点,则创建根节点,并且该节点作为创建根节点下的子节点。
7.如权利要求4-6任一项所述的Quartz集群定时任务处理方法,其特征在于:当主节点脱离Quartz集群,则注销该主节点的定时任务,更新该主节点的状态为不可用,并在其注册结点中选取主节点。
8.如权利要求7所述的Quartz集群定时任务处理方法,其特征在于:所述定时任务的变更包括对节点进行修改、增加和删除;所述变更相应的指令包括定时任务进行注册、注销、启动和停止。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉市烽视威科技有限公司,未经武汉市烽视威科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711370060.2/1.html,转载请声明来源钻瓜专利网。