zookeeper面试题

2021年11月22日 阅读数:4
这篇文章主要向大家介绍zookeeper面试题,主要内容包括基础应用、实用技巧、原理机制等方面,希望对大家有所帮助。

请简述 ZooKeeper 的选举机制

  1. 半数机制:集群中半数以上机器存活,集群可用。因此 Zookeeper 适合安装奇数台服务器。例如,5台服务器有3台存活,集群可用,而只有2台存活,集群不可用。
  2. Zookeeper 虽然在配置文件中并无指定 Master 和 Slave。 可是, Zookeeper 工做时,是有一个节点为 Leader,其余则为 Follower, Leader 是经过内部的选举机制临时产生的
  3. 选举的过程:选举半数及以上当选,从头至尾顺序开始,先选本身,发现本身当不了,再选后一位直到有节点当选。

半数机制myid最大的为Leader面试


ZooKeeper 的监听原理是什么?

监听原理详解:服务器

  1. 首先要有一个main()线程
  2. 在main线程中建立Zookeeper客户端(zkClient), 这时就会建立两个线程, 一个负责网络链接通讯( connet ), 一个负责监听( listener )
  3. 经过connect线程将注册的监听事件发送给Zookeeper(进行业务处理时调用监听(设为true))
  4. 在Zookeeper的注册监听器列表中将注册的监听事件添加到列表中
  5. Zookeeper监听到有数据或路径变化, 就会将这个消息发送给listener线程
  6. listener线程内部调用了process()方法

 

zookeeper面试题_监听事件


ZooKeeper 的部署方式有哪几种?集群中的角色有哪些?集群最少须要几台机器?

  1. 部署方式单机模式集群模式
  2. 角色: Leader 和 Follower
  3. 集群最少须要机器数: 3

ZooKeeper 的经常使用命令

CRUD:网络

  1. C
    • create
  2. R
    • ls
    • ls2
    • get
    • stat
  3. U
    • set
  4. D
    • delete
    • rmr
  5. help
zookeeper客户端操做