zookeeper 读写数据 (3888、原子广播、单一视图)

hierarchical namespace
分层命名空间(类似文件系统)

一、端口号

  • 2181 服务端端口
  • 2888 数据同步
  • 3888 Leader Election
  1. 假设zk1 zk2 zk3 zk4四个服务节点依次启动
  2. zk2连接zk1的3888端口,zk3分别连接zk1、zk2的3888端口,zk4分别连接zk1、zk2、zk3的3888端口,这样所有的服务节点建立了长连接

二、写数据

写数据流程.png
  • ZAB 原子广播协议

    1. 原子:要么成功 要么失败
    2. 广播:分布式多节点通知
    3. 队列保证消息顺序 FIFO
    4. 第4步中两阶段提交 two-phase commit
    5. 过半一致
    

三、读数据

  • 单一视图 single system image
  • watch机制
    1. 方向性
    2. 时效性

四、问题

zk数据存储在内存中,磁盘中写入日志 那内存具体数据结构是什么 ???

讲解1.png
讲解2.png
讲解3.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容