![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Zookeeper
拾荒路上的开拓者
开拓,前行!矫情?不存在的……
展开
-
实现一个原语:通过Zookeeper实现锁
关于Zookeeper的功能,一个简单的例子就是通过锁来实现临界区域。我们知道有很多形式的锁(如:读/写锁、全局锁),通过Zookeeper来实现锁也有多种方式。这里讨论一个简单的方式来说明应用中如何使用Zookeeper,不再考虑其它形式的锁。假设有一个应用由n个进程组成,这些进程尝试获取一个锁。再次强调,Zookeeper并未直接暴露原语,因此我们使用Zookeeper的接口来管理znod...原创 2019-09-23 22:37:29 · 173 阅读 · 0 评论 -
Zookeeper:一个主-从模式例子的实现
Zookeeper主-从模式的模型中包括三个角色:主节点:负责监视新的从节点和任务,分配任务给可用的从节点 从节点:通过系统注册自己,以确保主节点看到它们可以执行任务,然后开始监视新任务 客户端:创建新任务并等待系统的响应1 主节点角色因为只有一个进程会成为主节点,所以一个进程成为Zookeeper的主节点后必须锁定管理权。为此,进程需要创建一个临时znode,名为/master:...原创 2019-09-25 22:32:51 · 352 阅读 · 0 评论 -
ZooKeeper如何设置监视点
Zookeeper的API中的所有读操作:getData、getChildren和exists,均可以选择在读取的znode节点上设置监视点。使用监视点机制,需要实现Watcher接口类,实现其中的方法如下:public void process(WatchedEvent event);WatchedEvent数据结构包括以下信息:Zookeeper会话状态(KeeperState)...原创 2019-10-09 22:06:30 · 421 阅读 · 0 评论