[发明专利]一种基于ZooKeeper的分布式应用管理方法在审
申请号: | 201710947103.2 | 申请日: | 2017-10-12 |
公开(公告)号: | CN107562522A | 公开(公告)日: | 2018-01-09 |
发明(设计)人: | 沙一川 | 申请(专利权)人: | 国电南瑞科技股份有限公司;南京南瑞集团公司;南京南瑞集团公司节能环保分公司;国电南瑞南京控制系统有限公司 |
主分类号: | G06F9/455 | 分类号: | G06F9/455;G06F9/50;H04L12/24 |
代理公司: | 南京纵横知识产权代理有限公司32224 | 代理人: | 董建林,俞翠华 |
地址: | 211106 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 zookeeper 分布式 应用 管理 方法 | ||
1.一种基于ZooKeeper的分布式应用管理方法,其特征在于,包括以下步骤:
(1)初始化ZooKeeper管理中心:选取奇数个服务器节点,进行配置,构建ZooKeeper管理中心,所述ZooKeeper管理中心包括一个Leader和若干个Follower;
(2)服务器节点应用状态的发布:各服务器节点启动时,初始化本节点应用状态,并抽象为应用服务,然后向ZooKeeper管理中心创建应用状态节点,并在ZooKeeper管理中心生成应用服务目录结构;
(3)服务器节点应用状态的更新:各个服务器节点周期性的检查本节点应用服务状态,并向ZooKeeper管理中心更新该应用状态节点下服务提供者节点信息;
(4)节点应用状态故障或主动退出:服务器节点发生应用故障、退出或者宕机时,向ZooKeeper管理中心删除该应用状态节点下的服务提供者节点信息;
(5)客户端获取应用服务:ZooKeeper管理中心主动将应用服务状态信息推送到关注此应用服务的客户端,客户端完成应用服务的更新。
2.根据权利要求1所述的一种基于ZooKeeper的分布式应用管理方法,其特征在于:所述步骤(1)具体为:选取奇数个服务器节点,进行配置,构建ZooKeeper管理中心,ZooKeeper管理中心通过选举算法,选举出唯一的Leader和若干个Follower,并确保各不同服务器的数据一致性。
3.根据权利要求2所述的一种基于ZooKeeper的分布式应用管理方法,其特征在于:所述选举算法为LeaderElection算法。
4.根据权利要求3所述的一种基于ZooKeeper的分布式应用管理方法,其特征在于:所述选举出唯一的Leader和若干个Follower的具体过程为:
(1.1):选取奇数个服务器节点作为ZooKeeper管理中心节点(zk1…zk2n+1),开始选举Leader;
(1.2):各个节点启动选举线程,向zk1…zk2n+1节点发起询问,如果是第一次询问,初始化投票信息,投票信息包含节点唯一标识nodeid和ZooKeeper事务标识zkid,表示为(nodeid,zkid);选举线程收到回复后,验证是否是自己发起的询问,然后获取对方的nodeid,并存储到询问对象列表中,最后获取对方提议的leader信息(nodeid,zkid),并存储到选举的投票记录表中;
(1.3)收到所有zk节点回复后,与本节点投票信息比较,计算zkid最大的zk节点,如果zkid相同,则比较nodeid,选择nodeid最大的zk节点,并将此节点设置成下一次投票推荐的zk节点;
(1.4)将当前zkid最大的zk节点设置为要推荐的Leader,如果zk节点获得超过n+1个节点的选票,则当前zk节点为Leader,否则重复进行1.2到1.4步骤,直到选举出Leader。
5.根据权利要求1所述的一种基于ZooKeeper的分布式应用管理方法,其特征在于:所述步骤(3)具体为:各个服务器节点通过检查各个应用关联bundle的运行状态来判断本服务器的应用状态,然后向ZooKeeper管理中心更新该应用服务节点的信息,应用服务节点信息包括节点主机名、IP和时间。
6.根据权利要求1所述的一种基于ZooKeeper的分布式应用管理方法,其特征在于:所述步骤(4)具体为:服务器节点发生应用故障或主动退出时,本服务器节点所提供的该应用服务已不可用,主动删除该应用服务在ZooKeeper管理中心上的应用状态节点。
7.根据权利要求1所述的一种基于ZooKeeper的分布式应用管理方法,其特征在于:所述步骤(5)具体为:ZooKeeper管理中心通过Watcher推送机制将更新的应用服务提供者信息通知到客户端,以保证应用服务的可用性和准确性。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国电南瑞科技股份有限公司;南京南瑞集团公司;南京南瑞集团公司节能环保分公司;国电南瑞南京控制系统有限公司,未经国电南瑞科技股份有限公司;南京南瑞集团公司;南京南瑞集团公司节能环保分公司;国电南瑞南京控制系统有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710947103.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种组件显示方法及装置
- 下一篇:一种业务系统中定时任务的实现方法及装置