zoukankan      html  css  js  c++  java
  • 关于Zookeeper

    选举机制:

      1. 集群中半数以上节点存活,集群可用,即zookeeper适合安装奇数台服务器

      2. zookeeper在配置文件中没有主从进程的概念,但是工作时,会通过选举选出来一个Leader和其它的Follower,内部选举机制临时产生,不固定(根据节点启动的先后顺序和myid中的值的大小)

      3. 栗子:

        三台节点,id为1-3,顺序启动

        1启动之后,由于只有一台服务器,选举处于looking状态

        2启动之后,与1通信,id为2胜出,1 和 2 都投给自己一票和给id大的一票,即现在2有两票

        3启动之后,由于只有三台机器,半数已达到,即使3  的id大于2,但是此时Leader仍是2,而非3节点

    Zookeeper的常用命令:

      ls / : 查看当前znode中所包含的内容

      ls2 /  : 查看当前节点详细数据

      create -s/-e :创建 -s:含有序列节点  -e:临时节点

      get /节点名 :获得节点的值

      rmr : 递归删除节点

      set:设置节点具体的值

      stat:查看节点的状态

      delete:删除节点

    监听器原理:

      1. 创建一个main线程

      2. 在main线程中创建zookeeper客户端,这时就会创建两个线程:connect(网络连接通信);listener(监听)

      3. 通过connect线程将注册的监听事件发送给zookeeper

      4. 在zookeeper的注册监听器列表中将注册的监听事件添加到列表中

      5. zookeeper监听到数据变化,将信息发送给listener线程

      6. listener线程内部调用了process方法

    常见监听:

      - 节点数据的变化

      -    子节点增减的变化

  • 相关阅读:
    HDU_5372 树状数组 (2015多校第7场1004)
    《 字典树模板_递归 》
    《神、上帝以及老天爷》
    《Crazy tea party》
    UVA_ Overflow
    UVA_If We Were a Child Again
    UVA_Product
    UVA_Integer Inquiry
    你也可以屌到爆的这样敲代码当黑客!
    大数相加_原创
  • 原文地址:https://www.cnblogs.com/joey-413/p/14100137.html
Copyright © 2011-2022 走看看