zookeeper

从节点开始:

1.znode结构和window环境中的文件夹结构相似,zookeeper中每一个节点被认为一个znode

2.每个znode以"/"开头,通过路径引用,并且路径时绝对路径,每个路径都是唯一且不可改变的

3.引用的路径由Unicode字符串组成,加入一些限制,有特定含义,如"/zookeeper"用于存管理信息

4.znode兼备存储和目录两种特点,既可以存数据,有可以当做路径被调用 

 5.znode由三部分组成:stat表示状态信息版本等..data表示关联数据,children表示子节点信息

6.zookeeper用来管理调度数据,配置信息等..每个节点znode的存储很小,限制不超过1M,实际更小

7.每个节点被操作是具有原子性的,读只能整个读,写会整个节点覆盖

8.znode分为两种类型临时节点和永久节点,只能在创建时指定类型,之后不能改变

9.临时节点绑定会话,一次会话结束被删除也可手动删除,对所有客户可见,且不允许有子节点

10.永久节点只有在客户删除操作是才会删除

11.节点上可以设置watch,当节点状态改变,watch相当于监听,做出相应的操作,zookeeper会向客户发通知,且只发送一条通知,以减少网络流量

zookeeper存储结构:

                      

操作节点的原子性:

                      

 

watch机制:

 重试策略:

 集群选举:

sever的状态分为三种:

1.LOOKING:正在查询leader信息,不知道leader是谁

2.LEADING:当前server就是leader

3.FOLLOWING:leader已经选出,当前server同步到了leader信息

再 . zookeeper集群数目一般为奇数个:

原因有两个:1.容错,半数以上投票通过选举,所有至少两台才可进行选举,奇数个容错高成本低

                   2.防止脑裂,一个集群只允许一个leader,双数会出现两个leader,此时会导致集群不可用

 zookeeper中的角色: 

领导者:1.负责投票的发起和决议,2.更新系统状态

学习者:分为跟随者follower和观察者observer

        follower:1.接收请求响应请求,2.参与选主投票

        observer:1.接受客户连接转发到leader2.不参与选主,同步leader状态3.扩展系统,提高读取速度

客户端:发起请求

再 . zookeeper的核心:

        原子广播机制,保证了各个server之间通信的同步,实现它的协议叫做zab协议

        zab协议有两种模式:1.恢复模式,也就是正在选主状态中...

                                        2.广播模式,意思是已选好主的状态,已进入同步...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值