[发明专利]定时任务的分布式调用系统有效
| 申请号: | 202011273479.8 | 申请日: | 2020-11-13 |
| 公开(公告)号: | CN112416581B | 公开(公告)日: | 2022-02-18 |
| 发明(设计)人: | 肖向徐 | 申请(专利权)人: | 五八同城信息技术有限公司 |
| 主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F9/48;H04L43/08;H04L43/10;H04L67/10;H04L67/133 |
| 代理公司: | 北京润泽恒知识产权代理有限公司 11319 | 代理人: | 吕俊秀 |
| 地址: | 300450 天津市滨海新区经济技术开*** | 国省代码: | 天津;12 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 定时 任务 分布式 调用 系统 | ||
本发明提供了一种定时任务的分布式调用系统,该系统包括:客户端集群,包括多个客户端节点,用于获取任务注册信息并向服务器节点发送,还发送心跳信息,将用户的操作指令发送至服务器节点;服务器集群,包括多个服务器节点,用于创建定时任务;在到达定时任务触发时间时,确定任务执行节点,由任务执行节点执行定时任务;提供任务执行监控接口,接收客户端节点的操作指令并执行对定时任务的操作;ZooKeeper集群,用于保存客户端节点和服务器节点的状态信息;MongoDB集群,用于保存任务注册信息,并保存定时任务对应的任务执行节点和服务器节点的标识。本发明避免了单点故障,节省了本地服务资源,实现了对任务执行过程的监管。
技术领域
本发明涉及计算机技术领域,特别是涉及一种定时任务的分布式调用系统。
背景技术
现有技术中,在配置定时任务时,一般是通过Spring注解@Scheduled方式配置定时任务,例如:配置的定时任务为@Scheduled(cron=0 0 0/1**?),即每小时执行一次定时任务,配置完成的定时任务在服务器本地执行。
由于任务执行过程是不可见的,对于任务的执行进度以及执行是否因异常终止等情况无法控制预感知;而且由于任务在本地执行,即任务的执行与应用在相同JRE(JavaRuntime Environment,Java运行环境)中执行,对应用本身性能的影响无法控制,大概率会出现因定时任务出现异常导致应用服务性能急剧下降的情况;在定时任务执行过程中,对于批量数据处理,不能人工干预;而且由于任务在本地创建并在本地所有节点共同执行,导致不能充分利用集群资源。
综上,通过Spring注解@Scheduled方式配置的定时任务存在着以下缺陷:容易出现单点故障;消耗本地服务资源;任务执行过程难以监管;不能充分利用集群资源。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种定时任务的分布式调用系统。
依据本发明的第一方面,提供了一种定时任务的分布式调用系统,包括:
客户端集群,包括多个客户端节点,客户端节点用于获取任务注册信息,向服务器节点发送与所在客户端集群标识对应的任务注册信息,并向服务器节点发送心跳信息,接收用户对定时任务的操作指令,并将所述操作指令发送至服务器节点;
服务器集群,包括多个服务器节点,用于接收所述任务注册信息,并创建与所述任务注册信息对应的定时任务,将所述任务注册信息保存至MongoDB集群;根据所述心跳信息确定客户端节点的状态信息,将所述客户端节点的状态信息和心跳信息保存至ZooKeeper集群,并将服务器节点的状态信息保存至ZooKeeper集群;在到达所述定时任务触发时间时,确定状态信息为可用状态的一个服务器节点或客户端节点,作为任务执行节点,并将所述定时任务发送至所述任务执行节点,由所述任务执行节点执行所述定时任务;提供任务执行监控接口,通过所述任务执行监控接口接收客户端节点的操作指令,并根据所述操作指令执行对定时任务的操作;
ZooKeeper集群,用于保存所述客户端集群中多个客户端节点的状态信息和心跳信息,并保存多个服务器节点的状态信息;
MongoDB集群,用于保存所述任务注册信息,并保存定时任务对应的任务执行节点和服务器节点的标识。
可选的,所述任务执行监控接口包括Console可视化操作平台和/或监控应用程序编程接口API,服务器节点用于根据通过Console可视化操作平台或监控API接收到的所述操作指令,执行与所述操作指令对应的操作。
可选的,所述与所述操作指令对应的操作包括创建定时任务、触发定时任务的执行、暂停定时任务的执行、重启定时任务、删除定时任务、显示定时任务分析报表、获取并显示定时任务的执行进度,以及获取并显示定时任务所在任务执行节点的性能指标中的至少一种。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于五八同城信息技术有限公司,未经五八同城信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011273479.8/2.html,转载请声明来源钻瓜专利网。





