[发明专利]一种定时任务的执行方法、装置、计算机设备及存储介质在审
| 申请号: | 201911301277.7 | 申请日: | 2019-12-17 |
| 公开(公告)号: | CN111078413A | 公开(公告)日: | 2020-04-28 |
| 发明(设计)人: | 李恺;何柄融;许煜彬;王伟 | 申请(专利权)人: | 深圳前海环融联易信息科技服务有限公司 |
| 主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F9/54;G06F16/25;G06F16/21 |
| 代理公司: | 深圳市精英专利事务所 44242 | 代理人: | 武志峰 |
| 地址: | 518000 广东省深圳市前海深港合作区前*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 定时 任务 执行 方法 装置 计算机 设备 存储 介质 | ||
1.一种定时任务的执行方法,其特征在于,包括:
设置多个哈希槽,并对所述多个哈希槽进行编号;
将每台服务器与其中的一部分哈希槽进行关联,且每台服务器关联的哈希槽不相同;
当需要对定时任务进行执行时,获取定时任务中各条数据的主键字段,并通过所述主键字段对所述哈希槽的总数量进行取模计算,得到取模结果;
根据所述取模结果确定对应哈希槽的编号,并基于所述编号确定对应哈希槽关联的服务器,再将相应的数据分配至对应的服务器进行处理;
通过Redis数据库记录参与所述定时任务的服务器的总数量;
在Redis数据库中记录处理完对应数据的服务器的数量,并判断所述服务器的总数量与处理完对应数据的服务器的数量是否相等;
若相等,则结束当前定时任务,并将所述Redis数据库中记录的服务器的总数量以及处理完对应数据的服务器的数量均重置为0;
若不相等,则继续等待未处理完对应数据的服务器完成当前定时任务。
2.根据权利要求1所述的定时任务的执行方法,其特征在于,所述将每台服务器与其中的一部分哈希槽进行关联,且每台服务器关联的哈希槽不相同,包括:
将所述哈希槽的总数量除以服务器的总数量,得到每台服务器关联的哈希槽的数量;
依次从所有哈希槽中取出对应数量的哈希槽分配至每台服务器,并将每台服务器与分配的哈希槽进行关联。
3.根据权利要求1所述的定时任务的执行方法,其特征在于,所述当需要对定时任务的各条数据进行处理时,获取各条数据的主键字段,并通过所述主键字段对所述哈希槽的总数量进行取模计算,得到取模结果包括:
根据哈希算法计算各条数据的主键字段对应的哈希值;
通过所述哈希值对所述哈希槽的总数量进行取模计算,得到取模结果。
4.根据权利要求1所述的定时任务的执行方法,其特征在于,还包括:
当当前定时任务未执行完成并且增加新的服务器时,则等待当前定时任务执行完成;
在当前定时任务执行完成后,更新服务器的总数量,并基于更新后的服务器的总数量重新分配哈希槽。
5.根据权利要求4所述的定时任务的执行方法,其特征在于,还包括:
当执行下一次定时任务时,在所述Redis数据库中重新设置参与定时任务的服务器的总数量。
6.根据权利要求3所述的定时任务的执行方法,其特征在于,所述哈希算法为CRC16算法。
7.根据权利要求4所述的定时任务的执行方法,其特征在于,所述在Redis数据库中记录处理完对应数据的服务器的数量,包括:
当一服务器处理完对应数据时,则在所述Redis数据库中将处理完对应数据的服务器的数量加1。
8.一种定时任务的执行装置,包括:
编号单元,用于设置多个哈希槽,并对所述多个哈希槽进行编号;
关联单元,用于将每台服务器与其中的一部分哈希槽进行关联,且每台服务器关联的哈希槽不相同;
获取单元,用于当需要对定时任务进行执行时,获取定时任务中各条数据的主键字段,并通过所述主键字段对所述哈希槽的总数量进行取模计算,得到取模结果;
分配单元,用于根据所述取模结果确定对应哈希槽的编号,并基于所述编号确定对应哈希槽关联的服务器,再将相应的数据分配至对应的服务器进行处理;
记录单元,用于通过Redis数据库记录参与所述定时任务的服务器的总数量;
判断单元,用于在Redis数据库中记录处理完对应数据的服务器的数量,并判断所述服务器的总数量与处理完对应数据的服务器的数量是否相等;
第一重置单元,用于若相等,则结束当前定时任务,并将所述Redis数据库中记录的服务器的总数量以及处理完对应数据的服务器的数量均重置为0;
等待单元,用于若不相等,则继续等待未处理完对应数据的服务器完成当前定时任务。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳前海环融联易信息科技服务有限公司,未经深圳前海环融联易信息科技服务有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911301277.7/1.html,转载请声明来源钻瓜专利网。





