分布式可观察的任务调度系统及方法与流程

文档序号:29793523发布日期:2022-04-23 18:15阅读:来源:国知局

技术特征:
1.一种分布式可观察的任务调度方法,其特征在于,包括:步骤s1:当服务号管理系统发布任务时,从redis缓存中获取当前任务的序列号;步骤s2:服务号管理系统通过消息队列将任务分发至相应的任务执行单元;步骤s3:任务执行单元将任务进度写入redis中;步骤s4:通过redis中保存的序列号信息,记录序号总数,通过当前执行的序号计算队列排队进度。2.根据权利要求1所述的分布式可观察的任务调度方法,其特征在于,所述消息队列是通过rabbitmq实现的,通过负载均衡算法进行任务调度,包括:任务分发、任务进度查询、任务排队查询、任务监听、异常处理以及消息确认。3.根据权利要求1所述的分布式可观察的任务调度方法,其特征在于,所述任务执行单元以集群形式部署,并根据服务号素材同步的数据量动态进行扩容或升配。4.根据权利要求1所述的分布式可观察的任务调度方法,其特征在于,利用分布式锁和redis原子计数,基于单线程执行特点,获取全局唯一序列号。5.根据权利要求1所述的分布式可观察的任务调度方法,其特征在于,任务执行单元通过cms乐观锁,利用单个守护线程上报每个任务进度;当任务进度无更新时,当前线程进入阻塞等待,则降低cpu占用。6.根据权利要求1所述的分布式可观察的任务调度方法,其特征在于,将任务信息存储于threadlocal内,并与当前执行线程所绑定。7.根据权利要求4所述的分布式可观察的任务调度方法,其特征在于,将任务进度利用异步线程提交进度机制写入redis中。8.一种分布式可观察的任务调度系统,其特征在于,包括:模块m1:当服务号管理系统发布任务时,从redis缓存中获取当前任务的序列号;模块m2:服务号管理系统通过消息队列将任务分发至相应的任务执行单元;模块m3:任务执行单元将任务进度写入redis中;模块m4:通过redis中保存的序列号信息,记录序号总数,通过当前执行的序号计算队列排队进度。9.根据权利要求8所述的分布式可观察的任务调度系统,其特征在于,所述消息队列是通过rabbitmq实现的,通过负载均衡算法进行任务调度,包括:任务分发、任务进度查询、任务排队查询、任务监听、异常处理以及消息确认;所述任务执行单元以集群形式部署,并根据服务号素材同步的数据量动态进行扩容或升配。10.根据权利要求8所述的分布式可观察的任务调度系统,其特征在于,利用分布式锁和redis原子计数,基于单线程执行特点,获取全局唯一序列号;任务执行单元通过cms乐观锁,利用单个守护线程上报每个任务进度;当任务进度无更新时,当前线程进入阻塞等待,则降低cpu占用;将任务信息存储于threadlocal内,并与当前执行线程所绑定;将任务进度利用异步线程提交进度机制写入redis中。

技术总结
本发明提供了一种分布式可观察的任务调度方法及系统,包括:步骤S1:当服务号管理系统发布任务时,从Redis缓存中获取当前任务的序列号;步骤S2:服务号管理系统通过消息队列将任务分发至专门的任务执行单元;步骤S3:任务执行单元将任务进度写入Redis中;步骤S4:通过Redis中保存的序列号信息,记录序号总数,通过当前执行的序号计算队列排队进度。本发明通过采用分布式可观察的任务调度系统,解决了分布式环境下,单个应用实例执行任务的性能瓶颈,并提供了强大的可观察性,实时反馈任务调度过程中的状态。程中的状态。程中的状态。


技术研发人员:陈涛
受保护的技术使用者:上海金大师网络科技有限公司
技术研发日:2021.12.17
技术公布日:2022/4/22
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1