Zookeeper

Zookeeper概述

Zookeeper是一个开源的分布式的,为分布式应用提供协调服务的Apache项目.

Zookeeper=文件系统+通知机制

  • Zookeeper工作机制

    Zookeeper从设计模式角度来理解:是一个基于观察者模式设计的分布式服务管理框架,它负责存储和管理大家都关心的数据,然后接受观察者的注册,一旦这些数据的状态发生变化,Zookeeper就将负责通知已经在Zookeeper上注册的那些观察者做出相应的反应.

  • Zookeeper特点:

    1. Zookeeper:一个领导者(Leader),多个跟随着(Follower)组成的集群.
    2. 集群中只要有半数以上节点存活,Zookeeper集群就能正常服务.
    3. 全局数据一致:每个Server保存一份相同的数据副本,Client无论连接到哪个Server,数据都是一致的.
    4. 跟新请求顺序进行,来自同一个Client的跟新请求按其发送顺序依次执行.
    5. 数据更新原子性,一次数据跟新要么成功,要么失败
    6. 实时性,在一定时间范围内,Client能读到最新数据.
  • 数据结构

    ZooKeeper数据模型的结构与Unix文件系统很类似,整体上可以看作是一颗树,每个节点称做一个ZNode.每一个ZNode默认能够存储1MB的数据,每个ZNode都可以通过其路径唯一标识.

  • 应用场景

    提供的服务包括:统一命名服务/统一配置管理/统一集群管理/服务器节点动态上下线/软负载均衡等.


Paxos算法

Paxos算法一种基于消息传递且具有高度容错特性的一致性算法.


选举机制

  • 半数机制:集群中半数以上机器存活,集群可用.所以Zookeeper适合安装奇数台服务器.
  • Zookeeper虽然在配置文件中并没有指定Master和Slave,但是,Zookeeper工作时,是有一个节点为Leader,其他则为Follower,Leader是通过内部的选举机制临时产生的.

约定yueding666

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

  1. 部署方式单机模式/集群模式
  2. 角色:Leader和Follower
  3. 集群最少需要机器数:3
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

疯子@123

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值