
zookeeper
zookeeper使用
诗人不写诗
当你足够努力时,全世界都会给你让路
展开
-
ZooKeeper节点类型
要说zookeeper节点有多少种类型,直接看创建节点的参数就知道了:org.apache.zookeeper.ZooKeeper#create(java.lang.String, byte[], java.util.List<org.apache.zookeeper.data.ACL>, org.apache.zookeeper.CreateMode) public String create(String path, byte[] data, List<ACL> a原创 2022-03-19 21:25:12 · 2711 阅读 · 0 评论 -
1-ZooKeeper背景和原理
zookeeper来源zookeeper由雅虎研究院开发,后来捐赠给了Apache软件基金会。在当时,雅虎研究院的一个小组发现,雅虎内部很多大型系统都依赖着一个类似的组件来协调多个服务,但是这个组件却存在单点故障问题,所以研究人员就开始研发一个通用的协调框架,这个就是zookeeper的起源原因。至于为什么要叫zookeeper,是因为之前已经有很多项目都是用动物命名的,这个协调者刚好就起名叫动物园管理员了。zookeeper架构zookeeper在设计之处的目的之一就是要解决单点故障问题,所以原创 2022-03-06 22:42:53 · 613 阅读 · 0 评论 -
2-ZooKeeper 配置文件
zookeeper官方地址:Apache ZooKeeperhttps://zookeeper.apache.org/releases.htmlzookeeper配置文件# The number of milliseconds of each ticktickTime=2000# The number of ticks that the initial # synchronization phase can takeinitLimit=10# The number of ticks that原创 2022-03-13 11:42:45 · 1345 阅读 · 0 评论 -
3-ZooKeeper集群部署
集群规划利用3台服务器部署zookeeper,形成集群,提高zookeeper可用性。背景知识使用集群部署时,每个zookeeper服务节点都需要一个自然数作为唯一标识,这个标识写入文件中,文件路径是:$dataDir/myid。集群中每个节点的配置文件都需要加上所有节点信息,格式如下:server.x.hostname:port1:port2x:myid文件中的节点唯一标识hostname:可以写IP,也可以写主机名port1:集群中leader服务也follower服务通信的端口原创 2022-03-13 12:24:40 · 584 阅读 · 0 评论 -
4-ZooKeeper选举机制
zookeeper节点的状态zookeeper集群的节点有四种状态:LEADING:说明此节点已经是leader节点,在zookeeper中,只有leader才有写权限。LOOKING:选举中,正在寻找leader,即将进入leader选举流程中。FOLLOWING:跟随者,表示当前集群中的leader已经选举出来了,主要具备以下几个功能点 向leader发送请求(PING消息、REQUEST消息、ACK消息、REVALIDATE消息),接收leader消息并进行处理;接收client...原创 2022-03-13 20:26:11 · 1771 阅读 · 0 评论 -
5-ZooKeeper客户端使用
zookeeper的客户端其实是一个服务程序,他提供了各种api,有很多客户端是根据api做了可视化界面的。我们来看看Java客户端能使用的api是什么样的。Java客户端分类1、原生Java client<dependency> <groupId>org.apache.zookeeper</groupId> <artifactId>zookeeper</artifactId> <version>3原创 2022-03-08 23:15:20 · 255 阅读 · 0 评论 -
6-ZooKeeper 数据写入流程
写请求直接到了leader服务leader会先将数据写入自身,同时通知其他follower写入,当follower中有半数以上响应写入完成,leader就会告诉客户端数据写入完成,提前响应了客户端。写请求最先到follower服务follower会将写请求转发给leader,leader将数据写入自身,同时通知其他follower写入数据,当集群中有半数以上节点写入完成,leader会通知follower写入完成,follower会响应客户端数据写入完成。...原创 2022-03-14 20:19:22 · 5230 阅读 · 0 评论 -
7-ZooKeeper分布式锁实现
自行实现package com.peace.test.zookeeper.dlock;import org.apache.zookeeper.CreateMode;import org.apache.zookeeper.KeeperException;import org.apache.zookeeper.Watcher;import org.apache.zookeeper.ZooDefs;import org.apache.zookeeper.ZooKeeper;import org原创 2022-03-14 23:23:16 · 1487 阅读 · 0 评论