一种基于Raft的分布式任务调度系统

文档序号:26496313发布日期:2021-09-04 00:09阅读:来源:国知局

技术特征:
1.一种基于raft的分布式任务调度系统,其特征在于,包括多台互相连接的计算机,每台计算机分别包括任务执行器、远程调用通讯器、联合调度器和任务请求器;所述联合调度器状态分为领导者、追随者和候选者,所述计算机通过远程调用通讯器与其他计算机通信;所述系统通过以下步骤实现任务调度:1)联合调度器选举领导者;2)计算机j通过任务请求器j向联合调度器j发送任务请求;3)联合调度器j将任务请求转发给领导者;4)领导者接收任务请求,同步给其它联合调度器,并根据同步情况,对任务请求做出响应;5)如任务请求器j收到领导者的同意响应,则将任务派发给任务执行器j执行;如任务请求器j收到领导者的拒绝响应,则任务请求器j重新申请任务;6)任务请求器j在任务执行器j执行完成任务后,向领导者申请新的任务。2.如权利要求1所述的基于raft的分布式任务调度系统,其特征在于,所述步骤1)具体包括以下内容:1.1)联合调度器k的初始状态为追随者,当联合调度器k在超时期限t未收到作为领导者的联合调度器的追加日志请求,则认为领导者出现故障,联合调度器k变更状态为候选者,并向其他联合调度器发送成为领导者的选举投票请求;选举投票请求包含申请成为领导者的任期和联合调度器k的标识id;1.2)联合调度器n收到联合调度器k的选举投票请求,做返回响应:如选举投票请求中的任期大于联合调度器n的任期,则将联合调度器n的任期更新为选举投票请求中的任期,并返回同意申请;如果选举投票请求中的任期小于或等于联合调度器n的任期,则返回不同意申请和联合调度器n的任期;1.3)联合调度器k收到其它联合调度器的响应返回信息,如果收到同意的返回响应数量超过所有联合调度器总数的一半,则联合调度器k变更为领导者;如果收到返回信息中的联合调度器n的任期大于联合调度器k的任期,则联合调度器k变更为追随者,将联合调度器k的任期更新为联合调度器n的任期;1.4)在联合调度器k作为候选者选举期间,收到其它候选者抢先选举成功的消息,即同步日志请求,则联合调度器k变更为追随者;1.5)在领导者任期期间,如果收到候选者发来的选举投票请求且请求的任期大于领导者的任期,则该领导者变更为追随者。3.如权利要求1所述的基于raft的分布式任务调度系统,其特征在于,所述步骤4)具体包括以下内容:4.1)领导者接收到联合调度器j发送的任务请求,记录该请求并标记任务请求为追加状态;4.2)领导者向其它联合调度器发送同步任务请求;4.3)追随者x收到同步任务请求,记录该任务请求,向领导者返回确认响应;4.4)候选者y收到同步任务请求,变更自身状态为追随者,之后记录该任务请求,向领导者返回确认响应;4.5)领导者在收到超过半数联合调度器的确认响应后,将该任务请求标记为确认状
态,向联合调度器j返回同意该任务请求的响应;4.6)如果在超时期限t内,领导者未收到超过半数的联合调度器的确认响应,则将任务请求标记为失败状态,向联合调度器j返回拒绝该任务请求的响应。

技术总结
本发明属于分布式任务调度技术领域,涉及一种基于Raft的分布式任务调度系统,包括多台互相通讯的计算机,每台计算机包括任务执行器、远程调用通讯器、联合调度器和任务请求器,联合调度器又分为领导者、追随者和候选者三种状态;系统运行步骤,包括联合调度器选举,追随者接收领导者的作业日志,任务请求器向领导者发送任务申请,任务执行器执行获得领导者批准的任务申请;本发明系统中的计算机自动选举和申请任务,无需人为控制;本发明具备一定的容错能力,避免了系统由于部分计算机故障而任务中断的情况;任务执行由计算机根据自身负载情况申请,避免了负载不均衡问题;适用于需要高可用性,高性能,负载均衡的分布式任务调度应用场景。用场景。用场景。


技术研发人员:邹志文 李香婷
受保护的技术使用者:江苏大学
技术研发日:2021.03.16
技术公布日:2021/9/3
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1