![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
ZooKeeper
文章平均质量分 69
damipingzi
这个作者很懒,什么都没留下…
展开
-
ZooKeeper的原子广播(ZAB协议)
ZooKeeper作为高可用的一致性协调框架,自然有着一致性算法的实现,ZooKeeper使用的是ZAB协议作为数据一致性的算法,即ZAB(ZooKeeper Atomic Broadcast )。ZAB在Paxos算法上做了重要改造,和Paxos有着明显的不同。为讨论ZAB,我们假定ZooKeeper已经开启仲裁模式(ZooKeeper还有一种独立模式,除实验需求以外不要开,因为它无法避免脑裂)原创 2016-07-10 15:39:04 · 16351 阅读 · 0 评论 -
ZooKeeper的三种角色
上周有人和我说,有篇讲怎么调zk API的水文都上了csdn首页,我表示相当无奈,毕竟大多数人看一门技术就是想知道怎么调API,很少有人去了解内部机制。而懂不懂原理,恰恰是码农和架构师的最大区别。我肯定也会讲API,不过是下下篇的内容,最近仍然要讲原理。 这次说的是ZooKeeper的三种角色,也就是ZooKeeper服务器的三种节点类型(需要区分这里的“节点”和名字空间的“节点”,原创 2016-07-25 19:32:21 · 20732 阅读 · 1 评论 -
ZooKeeper的名字空间节点(有关znode的一切)
上一篇有人跟我说比较深奥和抽象,确实,我写这个不是按照循序渐进的写法写的,而是先写那本OREILLY书最不清楚的部分,然后再写次不清楚的……到最后会覆盖zk的绝大多数特性,这时候会再给出一个阅读次序的建议。 这篇来说说有关znode的一切,比较容易理解,也很容易通过zkCli.sh来实验。分层名字空间 上图是ZooKeeper的分原创 2016-07-16 20:24:48 · 5314 阅读 · 0 评论 -
ZooKeeper的安装与配置
本期开始进入实际操作,大致安排如下:本期讲安装配置,侧重于配置;下期讲用zk命令行实现一个主从模式;下下期讲zk的Java API。很多人喜欢看这些内容,其实我个人觉得这才是最无聊的,毕竟“API型人才”多如牛毛,懂原理的一百个里都找不到一个。安装1,从官网下安装包http://www.apache.org/dyn/closer.cgi/zookeeper/原创 2016-07-30 18:28:34 · 4208 阅读 · 1 评论 -
ZooKeeper命令行工具zkCli的使用
本次来讲命令行工具zkCli.sh的使用,这个工具对运维人员是非常重要的,许多对zk的管理操作都需要使用它来进行。作为一个示例,我会用zkCli.sh来创建一个主从模式系统,当然这只是作为演示,对开发人员来说不会这样操作。 首先需要配置zk的环境变量保证zkCli.sh能正常执行,这个过程省略。 连接zk集群使用命令zkCli.sh -server host:port,原创 2016-08-06 17:15:16 · 14211 阅读 · 1 评论 -
ZooKeeper的客户端库Curator
正常来说zk的内容到上一篇就可以结束了,但为了更好地使用zk,Curator是无法回避的话题。Curator是Netflix捐献给Apache的一套ZooKeeper客户端类库,提供了强大而简洁的封装,大大减少使用zk时重复发明轮子的情况。不客气的说,国内的Java程序员99%都是辣鸡,代码都是调对的而不是写对的,还特别喜欢重复发明轮子。相比之下,国外开源社区的代码质量就高得多,久经考验,即使有b原创 2016-08-20 15:30:06 · 2772 阅读 · 0 评论 -
ZooKeeper的原生API
之所以称之为“原生”,是为了和下次讲的Curator有所区别。讲述的版本还是以3.5.1为例。 API中一共有5个包:org.apache.zookeeperorg.apache.zookeeper.clientorg.apache.zookeeper.dataorg.apache.zookeeper.serverorg.apache.zookeeper.se原创 2016-08-13 16:26:07 · 2176 阅读 · 0 评论