[发明专利]一种基于ZooKeeper的无人集群分布式协同指挥控制方法有效
申请号: | 202110257626.0 | 申请日: | 2021-03-09 |
公开(公告)号: | CN113055461B | 公开(公告)日: | 2022-08-30 |
发明(设计)人: | 张巍;蒋纬中;肖志鹏 | 申请(专利权)人: | 中国人民解放军军事科学院国防科技创新研究院 |
主分类号: | H04L67/10 | 分类号: | H04L67/10;H04L67/1004;H04L67/1034;H04L67/1031;G06F9/50;G06F9/52 |
代理公司: | 中国兵器工业集团公司专利中心 11011 | 代理人: | 王智红 |
地址: | 100071 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 zookeeper 无人 集群 分布式 协同 指挥 控制 方法 | ||
1.一种基于ZooKeeper的无人集群分布式协同指挥控制方法,其特征在于,包括如下步骤:
步骤1、数据发布与订阅
1.1将ZooKeeper设置为集群模式,并部署相应的机器节点;ZooKeeper通过选举产生领导者节点,该机器节点负责进行投票的发起和决议,并更新系统状态;除去领导者节点的其余机器节点作为跟随者或者观察者,用于接收客户端请求,将写请求转发给领导者节点,同步领导者节点的状态,并向客户端返回结果,观察者与跟随者的区别在于观察者没有投票权;
若领导者节点出现网络中断、崩溃退出与重启等异常情况时,ZooKeeper进入恢复模式并从剩下的节点中选举产生新的领导者节点;
1.2所有接入系统的子系统或无人平台都在ZooKeeper上注册相应的ZNode,并发布相关数据到该节点下,供订阅者动态获取数据;
1.3各客户端即子系统或无人平台主动从ZooKeeper获取自己感兴趣的数据,同时可以在ZNode节点上注册一个Watcher,如此,每次信息有更新都会实时获得通知;
步骤2、命名服务
2.1系统中任何服务提供者在启动的时候,都向ZooKeeper上的指定节点目录下写入自己的URL地址,如此即完成服务的发布;
2.2服务消费者启动时,订阅指定节点目录下的提供者URL地址,并向消费者目录下写入自己的URL地址,这些注册的地址都采用临时节点,如此保证服务提供者和消费者可以自动感应资源的变化;
2.3服务提供者根据消费者注册的地址获取相关参数并提供服务,最后将结果反馈给服务消费者;
步骤3、心跳检测与集群监控,集群的监控系统实时检测集群中的平台是否存活
3.1每一个动态加入集群的无人平台都在ZooKeeper中指定节点下注册自己的临时ZNode节点;
3.2监控系统在指定节点上注册一个Watcher,那么该节点下所有临时节点的变化都可以由Watcher实时通知到监控系统;
3.3由于无人平台的节点具有临时特性,若会话结束或过期,则该节点消失;
步骤4、分布式日志收集
4.1收集器按照业务来分配收集任务单元,因此在ZooKeeper上创建一个以业务名作为节点的节点P;
4.2将这个业务相关的所有机器ip,以子节点的形式注册到节点P上,当机器变动的时候,能够实时通知到收集器调整任务分配;
步骤5、分布式锁
在无人平台进行协同任务过程中,可能出现多个平台同时请求某一资源,这种情况下需要互斥锁进行保护,具体步骤如下:
5.1将ZooKeeper上的一个数据节点视为一个锁;
5.2当多个客户端同时调用create()创建该节点的时候,ZooKeeper能够保证在分布式高并发情况下节点创建的全局唯一性,即最终一定只有一个客户端请求能够创建成功;
创建成功的客户端视作获取锁成功,其他客户端则竞争失败;
5.3其他客户端注册Watcher对该节点进行监听;
5.4持有锁的客户端删除该节点,即释放锁后,监听的客户端就会收到Watcher通知,然后再去试图获取锁,如此反复;
步骤6、分布式队列
基于ZooKeeper的顺序节点即实现分布式队列。
2.根据如权利要求1所述的一种基于ZooKeeper的无人集群分布式协同指挥控制方法,其特征在于,所述步骤6还能创建同步分布式队列;
6.1创建一个父节点/queue;
6.2每个成员都在标志位节点/queue/start注册Watcher;
6.3每个成员都加入这个队列,加入队列的方式就是创建/queue/x(i)的临时目录节点,i为成员编号;
6.4每个成员获取/queue目录的所有子节点,也就是x(i),判断i的值是否已经是成员的个数,如果i小于成员个数则等待/queue/start的出现,如果i等于成员个数,则创建/queue/start。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军军事科学院国防科技创新研究院,未经中国人民解放军军事科学院国防科技创新研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110257626.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:发送器和接收设备
- 下一篇:一种云服务架构设计方法