Zookeeper---概念梳理

概述:

Zookeeper 为分布式应用提供分布式负载均衡服务,它是一个开源的,分布式的项目,对于分布式来说最容易出错的就是竞争条件和死锁,Zookeeper解决这个两个问题。

1.Zookeeper设计目标:

1. 简单:ZooKeeper结构类似文件系统,文件系统的文件夹对应Zookeeper的znodes,Zookeeper操作在内存,文件系统操作在硬盘中

        2.可复制:一个Leader,多个follower

        3.有序的:只要是更新就会通知所有Zookeeper事务,类似排队实现有序

        4.快速: 读:写=10:1(也就是读速度是写速度的10倍)

2.数据模型(拿官方图看一下)和分层命名空间

图1.1 Zookeeper的分层命名空间

这个命名空间就是树形结构,每个znode都有/,通过节点路径找到对应的节点


3.节点和瞬时节点

  1.    znode节点存储信息很少(0- 千字节范围),存储内容有:状态信息,配置,定位信息等等。
  2.    znode节点包含一个version(版本)每一次数据改变,version号都会增加。
  3.    znode节点保存ACL(access Controll List)访问控制列表,读写权限控制。
  4.    (ephemeral nodes)瞬时节点 跟会话绑定,也就是会话关闭,这个节点也会被删除

4.Zookeeper可以保证的内容:

  1. Sequential Consistency(串行一致性)一个客户端更新会逐步按顺序更新其他客户端
  2. Atomicity (原子性) 要么成功 要么失败,没有中间状态
  3. Single System Image (单一系统映像) 客户端所看东西是一样的
  4. Reliability(可信赖) 只要更新之后,这个状态和值都会保存直到再次修改
  5. Timeliness(及时) 保证在一定时间完成所有客户端更新

5.简单API

  • create 创建
  • delete 删除
  • exists 存在
  • get data 得到数据
  • set data 设置数据
  • get children 得到所有子节点list
  • sync  等待所有数据被传播
总结: Zookeeper简单操作,功能强大。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值