[发明专利]基于Redis的分布式定时调度系统和方法有效
| 申请号: | 202110574672.3 | 申请日: | 2021-05-26 |
| 公开(公告)号: | CN113032131B | 公开(公告)日: | 2021-08-31 |
| 发明(设计)人: | 李太友;宋晨;李文泽;赵健军;郭昊 | 申请(专利权)人: | 天津中新智冠信息技术有限公司 |
| 主分类号: | G06F9/48 | 分类号: | G06F9/48 |
| 代理公司: | 暂无信息 | 代理人: | 暂无信息 |
| 地址: | 300456 天津市滨海新区中新生态城中成*** | 国省代码: | 天津;12 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 redis 分布式 定时 调度 系统 方法 | ||
1.一种基于Redis的分布式定时调度系统,其特征在于,包括至少两个定时任务调度节点、定时任务执行节点和定时任务调度策略配置模块,每个定时任务调度节点包括任务抢占线程和任务续约线程,其中,
每个任务抢占线程持续执行预设关键字抢占操作,所述预设关键字用于确定定时任务调度主节点;
若当前任务抢占线程抢占预设关键字,则当前任务抢占线程将当前定时任务调度节点设置为定时任务调度主节点;
当前任务续约线程持续进行定时任务调节主节点续约操作;
若续约操作执行失败,则下一个任务抢占线程将下一个定时任务调度节点设置为定时任务调度主节点,所述下一个任务抢占线程为下一次抢占预设关键字对应的线程;
下一个任务续约线程持续进行定时任务调度主节点续约操作;
定时任务调度主节点根据任务调度策略配置模块预先配置的任务调度策略,向定时任务执行节点发送调度请求,以执行定时任务执行节点的调度任务;
定时任务执行节点接收调度请求,并执行相应的定时任务执行操作。
2.根据权利要求1所述的系统,其特征在于,每个任务抢占线程抢占预设关键字,包括:
每个任务抢占线程利用redis setnx指令抢占预设关键字。
3.根据权利要求1或2所述的系统,其特征在于,若当前任务抢占线程抢占预设关键字,则当前任务抢占线程将当前定时任务调度节点设置为定时任务调度主节点,包括:
若当前任务抢占线程抢占预设关键字,则所述当前任务抢占线程将所述预设关键字的名称设置为定时任务调度主节点,将预设关键字的VALUE设置为当前定时任务调度节点。
4.根据权利要求3所述的系统,其特征在于,所述当前任务续约线程持续进行定时任务调度主节点续约操作,包括:
所述当前任务续约线程持续监听当前定时任务调度主节点的VALUE是否为当前定时任务调度节点;
若是,则确定定时任务调度主节点在当前续约有效期内是否已加载定时任务;若否,则持续监听当前定时任务调度主节点的VALUE是否为当前定时任务调度节点;
若已加载,则进行下一次定时任务调度主节点续约操作;
若未加载,则加载定时任务,之后进行下一次定时任务调度主节点续约操作;
下一次定时任务调度主节点续约操作成功后,所述当前任务续约线程继续执行持续监听当前定时任务调度主节点的VALUE是否为当前定时任务调度节点的操作。
5.根据权利要求4所述的系统,其特征在于,所述定时任务调度节点还包括增量线程,所述增量线程用于删除或增加调度任务。
6.根据权利要求5所述的系统,其特征在于,所述当前任务续约线程还用于:
若下一次定时任务调度主节点续约操作失败,则利用增量线程删除已加载的定时任务,并继续监听当前定时任务调度主节点的VALUE是否为当前定时任务调度节点。
7.根据权利要求6所述的系统,其特征在于,还包括:
所述增量线程用于将定时任务加载到内存中,以便定时任务调度主节点在当前续约有效期内加载定时任务。
8.根据权利要求1或2所述的系统,其特征在于,定时任务调度主节点根据任务调度策略配置模块预先配置的任务调度策略,向定时任务执行节点发送调度请求,以执行定时任务执行节点的调度任务,包括:
定时任务调度主节点在内存中根据任务调度策略配置模块预先配置的任务调度策略,向定时任务执行节点发送调度请求,以执行定时任务执行节点的调度任务。
9.根据权利要求1或2所述的系统,其特征在于,所述任务执行节点接收调度请求,并执行相应的任务执行操作,包括:
所述任务执行节点接收调度请求,根据预设定时任务执行逻辑执行相应的任务执行操作,得到任务执行结果:
所述任务执行节点将任务执行结果存储至任务执行日志中。
10.一种基于Redis的分布式定时调度方法,其特征在于,由权利要求1-9任一所述的基于Redis的分布式定时调度系统执行,包括:
每个任务抢占线程持续执行预设关键字抢占操作,所述预设关键字用于确定定时任务调度主节点;
若当前任务抢占线程抢占预设关键字,则当前任务抢占线程将当前定时任务调度节点设置为定时任务调度主节点;
当前任务续约线程持续进行定时任务调节主节点续约操作;
若续约操作执行失败,则下一个任务抢占线程将下一个定时任务调度节点设置为定时任务调度主节点,所述下一个任务抢占线程为下一次抢占预设关键字对应的线程;
下一个任务续约线程持续进行定时任务调度主节点续约操作;
定时任务调度主节点根据任务调度策略配置模块预先配置的任务调度策略,向任务执行节点发送调度请求,以执行任务执行节点调度任务;
任务执行节点接收调度请求,并执行相应的任务执行操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津中新智冠信息技术有限公司,未经天津中新智冠信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110574672.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:应用权限管理的方法和装置
- 下一篇:微带天线结构及通信设备





