• 泊浮目
    2020-01-01
    老师,请教下——为什么要有快照文件呢?zxid又为什么要设置高低位呢?Epoch文件是用来存储什么数据的?
    
     1
  • welike
    2019-11-24
    老师的这个课讲的跳跃性太大了,知识点有点干巴巴

    作者回复: 多谢您的建议。

    
     1
  • WL
    2020-01-10
    Epoch文件的作用是什么?
    
    
  • kkxue
    2020-01-02
    老师好,zk的整个data tree都会加载到内存么?

    作者回复: 是的。

    
    
  • 飞翔
    2019-10-03
    老师 求教 如果我有三个zookeeper 组成的cluster, 那么这三个zookeeper里边的数据是一样的嘛? 也就是master node 每次写完了 都会同步到其他的节点上? master node如果死了, 会重新选举,如果slave node死了会怎么样?

    作者回复: > 老师 求教 如果我有三个zookeeper 组成的cluster, 那么这三个zookeeper里边的数据是一样的嘛? 也就是master node每次写完了都会同步到其他的节点上?

    ZooKeeper要求在commit一个写操作之前就要在集群中大多数节点上进行日志写入。集群中某些节点的数据会稍微旧一些。建设ZooKeeper的3个节点是A,B和C:A是leader。例如,如果A和C的之间的网络很慢,一个写请求就有可能会被A和B处理之后被提交,这样C的数据就会旧一些。

    > master node如果死了, 会重新选举,如果slave node死了会怎么样?

    只要有大多数节点正常工作,ZooKeeper集群就可以正常工作。slave node死了不会发生选举。如果运维发现有节点有问题应该尽快进行节点的替换,可以通过reconfiguration(http://zookeeper.apache.org/doc/r3.5.5/zookeeperReconfig.html)来进行。

    
    
  • 天使梦泪
    2019-09-08
    老师好,zk的快照是每一个事务一个快照吗?

    作者回复: 不是的。ZooKeeper有一个参数snapCount(https://zookeeper.apache.org/doc/current/zookeeperAdmin.html)和快照的生成有关,默认是100000。一个ZooKeeper节点会取[snapCount/2+1, snapCount]中间的一个随机数,每当有这个随机数这么多的事务时就生成一个新的快照。

    
    
我们在线,来聊聊吧