zookeeper是一个分布式,开源分布式应用协调服务,它是一种为分布式应用程序提供?结果服务的软件。提供的功能包括:配置维护, 域名服务, 分布式同步, 组服务, 等等。让我们向典型分布式环境中遇到的一些典型问题引入一些解决方案。
1。集团管理(集团成员资格)(集团成员资格)
Zookeeper很容易[营销施工网站服务] 实现群集管理的功能,图1。15显示。如果多个服务器组成服务群集,然后,必须有“总管”以了解当前群集中的每台计算机的服务状态。一旦机器, 您无法提供服务。有必要在群集中看到其他群集。并重新分配服务策略。相同的,当集群的服务能力增加时,增加一个或多个服务器, 这些也必须让“总管”知道。
ZO0 Keeper不仅维护当前群集中的机器状态,而且, 可以选择“总管”。让“总管”管理群集一个是Zookeeper I Lender选举的另一个功能。
其实现是在zookeeper上创建一个短暂类型的目录节点。然后,每个服务器调用父节点上的getChildrenf字符串路径,它们创建了一个目录节点。 布尔观看)方法并将手表设置为true。因为它是一个截词目录节点,创建其服务器死亡时,此目录节点也删除,所以孩子会改变; 此时, 将被称为让孩子的手表。通知其他服务器某些服务器已死亡。添新 [做网站]服务器也是相同的原则。
Thenz0 Keeper如何实现选举,那是, 主服务器?在它面前好口碑自适应网站建设,每个服务器都会创建一个Ephiemeral目录节点。不同的是它仍然是一个顺序目录节点,所以它是一个短暂的顺序目录节点。它是截阵短顺序目录节点的原因,因为我们可以给出每个服务器G号。
我们可以选择当前最小的服务器数量为主,如果此最小的服务器已死,由于它是一个短暂的节点,还删除了与死服务器对应的节点。因此,当前节点列表中存在最小数量的节点。我们将选择此节点作为当前主设备。这将实现动态选择大师,避免在传统主人中易于出现的单点故障问题。
2。共享锁(锁)
在同一过程中,共享锁易于实现,但是在整个过程或不同的服务器上实施并不好。然而, ZooKeeper可以轻松实现此功能,通过获取锁定服务器,还创建了其实现也创建了截阵季节顺序目录节点。通过调用getchildren方法,检查当前目录节点列表中的最小目录节点是否是您创建自己的目录节点。如果你自己创造了自己,然后它得到这个锁; 如果不,然后呼叫存在(字符串路径,布尔观看)方法,并监视Zookeeper上的目录节点列表的更改,直到由自己创建的节点是列表中的目录节点的最小数量。从而获得锁。释放锁非常简单,只需删除早期创建的目录节点。
3.队列管理
敏捷可以在下面提供两种类型的队列
的,同步队列。那是, 当队列的成员收集时,此队列可用,否则等待所有成员到达。
第二,队列按照FIFO方法输入团队。[网站建设收费]操作,例如, 实现生产者和消费者模型。使用ZO0 Keeper的同步队列的实现如下。
创建父目录/同步,每个成员被监视(设置手表)位目录/同步/开始存在,然后每个成员都在添加此队列;
添加队列的方法是创建/同步/成员i的临时目录节点。每个成员获取所有目录节点/同步目录后,那是, 模板网站制作公司Member_i ;?确定我的值是否已经是一些成员,如果少于等待/'同步/开始的成员数量,如果它已经相等,则创建/同步/星形。
使用zookeeper实现FIFO队列的想法如下。
在特定网站制作目录中创建一个顺序类型的子目录队列i。这确保所有成员都在所有成员加入队列时编号; 队列通过Get Sense()方法返回所有队列中的元素。消费最小的,这将确保FIFO。
做网站公司公司网站建设企业 定制企业网站
请立即点击咨询我们或拨打咨询热线: 13968746378,我们会详细为你一一解答你心中的疑难。项目经理在线