![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
zk
文章平均质量分 79
txxs
这个作者很懒,什么都没留下…
展开
-
重谈分布式一致性:zk和kafka中的副本
这篇文章翻译自:https://www.confluent.fr/blog/distributed-consensus-reloaded-apache-zookeeper-and-replication-in-kafka/,有兴趣的可以看原文,由于水平有限翻译过程中难免有些错误,请大家指正,一定要多拍拍。这篇文章是由Apache Kafka的共同创建者Neha Narkhede和Apache Z...翻译 2019-11-25 18:35:09 · 1152 阅读 · 0 评论 -
zk的session
zk维护的数据主要有:客户端的会话(session)状态及数据节点(dataNode)信息。zk在内存中构造了个DataTree的数据结构,维护着path到dataNode的映射以及dataNode间的树状层级关系。为了提高读取性能,集群中每个服务节点都是将数据全量存储在内存中。可见,zk最适于读多写少且轻量级数据(默认设置下单个dataNode限制为1MB大小)的应用场景。数据仅存储在内存是很不...原创 2019-11-09 18:51:16 · 1740 阅读 · 0 评论 -
ZK节点
1. ZK节点的组织zookeeper采用树状结构对数据进行存储,整个数据存储结构非常类似于linux的文件系统。如下图所示,节点node_1的路径是/node_1,节点node_1_1的路径是/node_1/node_1_1。zookeeper就是通过对这些节点进行创建、删除、修改、读取等操作来完成系统功能的。2. ZK节点的数据结构cZxid = 0x300000002ctime =...原创 2019-11-07 10:58:06 · 2784 阅读 · 0 评论 -
ZooKeeper Watcher机制
要获取一个节点的数据变化,通常有两种方案:轮询:实时性差,资源利用率低,浪费大量的 CPU 和 带宽;事件:数据状态变更时,主动通知 Client,节省大量资源;ZK Server 通过 watcher 监视点,来实现事件通知。而zk使用的是后一种方案,一个zk服务器集群上的节点Znode发生变化(Znode本身的增加,删除,修改,以及子Znode的变化)就可以通过Watch机制通知到客...原创 2019-11-04 09:38:32 · 2115 阅读 · 0 评论 -
为什么需要zk
我们在kafka里看到了zk的使用,现在我们需要回答一个问题,为什么要用zk,为什么它在分布式系统里有着如此无可替代的地位,什么情况下我们要用zk?我们可以先看一下官网的回答:zk为分布式应用提供分布式协调服务,首先zk是用在分布式系统的,其次提供协调服务,提供什么样的协调服务呢,它另外一个属性是cp,也就是在分布式系统需要一致性的协调服务的时候我们就可以用zk了。zk设计的目标分为四个:zk设...原创 2019-10-24 12:29:50 · 972 阅读 · 0 评论