zookeeper 学习总结

总结

  1. zookeeper 是什么?
  2. zookeeper的作用?
  3. zookeeper的znode, master leader, ZAB协议
  4. zk的write 写流程,读流程
  5. zk的分布式锁原理
  6. zk的注册中心
  7. zk统一命名服务
  8. zk的集群和统一配置管理
  9. zk的发布与订阅服务, 分布式队列,运维, 负载均衡算法,

zookeeper 是什么?

zk 是分布式协调协议,可以作为注册中心、分布式锁、集群管理,统一配置管理、统一命名服务等等。

zk的作用?

同上

zk的znode

zk的znode 就是一个节点,zk采取 层次结构进行进程间协调, 像文件管理器。

zk的write 写流程,读流程

zk 的读,因为每个server的数据都是一致的,他的一致性原则,所以zk的读,就是读取指定的server, 返回数据
zk的写, 连接server, 转发到leader中,leader 将数据写操作,广播给server写,写好之后,将写成功标识回传到leader, leader判断大多数server都完成了,如果是,就广播所有的server,写操作ok了, 然后将写结果返回给 需要的client

zk的分布式锁原理

zk 对一个路径/lock进行连接,会创建子节点,并且是有序的,获取锁的过程中会判断该子节点的序号是否是子目录下最小的,不是,监听上级节点数据变化,上级还会监听上上级的节点数据变化,直到监听最小的节点。得到上级节点释放锁,删除数据,然后该节点会获取锁。

zk的注册中心

zk 的注册中心可以用于dubbo中,生产者将服务注册到zk中,消费者获取服务,并建立rpc连接,然后调用服务,zk 就完成了注册中心的功能.

zk统一命名服务

zk 就是统一管理命名服务的

zk的集群和统一配置管理

zk 可以连接多个, 统一配置管理,可以管理统一的配置信息,其中用到监听

zk的发布与订阅服务, 分布式队列,运维, 负载均衡算法,

发布与订阅服务,用到的watch 机制, 监听某个目录,
分布式队列,将数据发布到队列中,等待消费
运维, 集群管理中有些配置参数
负载均衡算法, 将服务列表的信息通过负载均衡算法,给client端

然后东西,说起来都挺简单,但是其中的细节特别多,需要注意的地方很多,就是把这些细节的东西做好,已经很不错了。
说明白,图形化, 简单化,一句话, 要点化

PS: 若你觉得可以、还行、过得去、甚至不太差的话,可以“关注”或者“点赞”一下,就此谢过!

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

推荐阅读更多精彩内容