首页
学习
活动
专区
圈层
工具
发布

#zk

zk源码—7.ZAB协议和数据存储

东阳马生架构

zk的数据模型是一棵树。zk存储了整棵树的内容,包括所有的节点路径、节点数据及ACL信息等。zk会定时将整棵树的数据存储到磁盘上。

7600

zk源码—6.Leader选举的实现原理

东阳马生架构

zk集群中的服务器分为Leader服务器、Follower服务器及Observer服务器。Leader选举是一个过程,在这个过程中主要做了两项工作:

11110

zk源码—5.请求的处理过程二

东阳马生架构

zk客户端的每个事务请求都需要zk集群中过半机器投票认可才能提交到内存数据库,所以ProposalRequestProcessor处理器会执行如下Proposa...

12410

zk源码—5.请求的处理过程一

东阳马生架构

当客户端需要和zk服务端进行相互协调通信时,首先要通过Leader服务器建立该客户端与服务端的连接会话。当会话创建成功后,zk服务端就可以接收来自客户端的请求操...

9810

zk源码—4.会话的实现原理

东阳马生架构

当zk客户端与服务端成功建立连接后,就会创建一个会话。在zk客户端的运行过程(会话生命周期)中,会话会经历不同的状态变化。

9400

zk源码—3.单机和集群通信原理二

东阳马生架构

Leader选举是集群版的zk服务端和单机版的zk服务端的最大不同点。首先QuorumPeer的startLeaderElection()方法会通过"new V...

8100

zk源码—3.单机和集群通信原理一

东阳马生架构

QuorumPeerMain类是zk服务的启动入口,可理解为Java中的main函数。通常我们执行zkServer.sh脚本启动zk服务时,就会运行这个类。Qu...

8200

zk源码—2.通信协议和客户端原理二

东阳马生架构

在使用zk的构造方法时会传入zk服务器地址列表,即connectString参数。zk客户端内部接收到这个服务器地址列表后,会首先将该列表放入ConnectSt...

7000

zk源码—2.通信协议和客户端原理一

东阳马生架构

虽然zk一直使用Jute框架作为其序列化的解决方案,但这并不意味着Jute相对其他框架性能更好,反倒是Apache Avro、Thrift等框架在性能上优于Ju...

7300

zk源码—1.数据节点与Watcher机制及权限

东阳马生架构

zk基础有三大模块:数据模型、ACL权限控制、Watch监控。其中数据模型最重要,zk很多典型的应用场景都是利用其数据模块实现的。比如可利用数据模型中的临时节点...

13010

zk基础—5.Curator的使用与剖析二

东阳马生架构

PathChildrenCache会调用原生zk客户端对象的getChildren()方法,并往该方法传入一个监听器childrenWatcher。当子节点发生...

7200

zk基础—5.Curator的使用与剖析一

东阳马生架构

CuratorZookeeperClient的start()方法会初始化好原生zk客户端,和zk服务器建立一个TCP长连接,而且还会注册一个Connection...

7900

zk基础—4.zk实现分布式功能

东阳马生架构

首先客户端需要向服务端注册自己关注的节点(添加Watcher事件)。一旦该节点发生变更,服务端就会向客户端发送Watcher事件通知。客户端接收到消息通知后,需...

15310

zk基础—3.集群与核心参数

东阳马生架构

如果开发时不注意没有使用单例模式,每次请求都创建一个zk客户端建立连接进行通信,然后再销毁zk客户端。当多个并发请求一起连接zk时,就会导致一台机器上有很多zk...

15510

zk基础—2.架构原理和使用场景

东阳马生架构

每台zk机器都在内存维护数据,所以zk集群绝对是高并发高性能的。如果让zk部署在高配置机器上,3台机器的zk集群能抗下每秒几万请求。

11610

zk基础—1.一致性原理和算法

东阳马生架构

有一个叫做Paxos小岛(对应zk集群),上面住了一批居民(对应zk的Client)。岛上面的事情由一些特殊的人决定,他们叫做议员(对应zk的Server)。议...

10510

搭建Zookeeper、Kafka集群

小陈运维

https://www.oiox.cn/index.php/start-page.html

17310

ZooKeeper入门——ZooKeeper系列(二)

翰墨飘香

Apache ZooKeeper 是一个开源的分布式协调服务,由知名互联网公司雅虎创建。ZooKeeper是一个典型的分布式数据一致性解决方案,分布式应用程序可...

25201

分布式基础概念-分布式服务之ZK[2]

@派大星

客户端连接zk,有zk分配一个全局唯一的sessionId,客户端需要配置超时时间timeOut并传到zk,zk会据此计算会话下一次超时的时间点,zk根据这个时...

28430

分布式基础概念-分布式服务之ZK[1]

@派大星

而且用临时顺序节点,如果某个客户端创建临时顺序节点之后,自己宕机了,zk感知到那个客户端宕机,会自动删除对应的临时顺序节点,相当于自动释放锁,或者是自动取消自己...

26720
领券