zookeeper详解及常用命令


从用途来说:Zookeeper是Apache组织下的高性能,分布式的应用协调服务框架,是google的chubby的一个开源实现。

Zookeeper具有的特性

原子性

更新只能成功或者失败,没有中间状态

数据一致性

为客户端展示同一个视图,这是zookeeper里面一个非常重要的功能

实时性

zookeeper不能保证两个客户端能公式得到刚更新的数据,如果需要最新数据,应该在读数据之前调用sync()接口

可靠性

如果消息被一台服务器接收,那么它将被所有的服务器接收。

独立性

各个Client之间互不干预

zookeeper存储ZNode

Znode是Zookeeper存储数据的数据单元

类型

持久型

持久Znode是在Zookeeper创建的Znode是永久存在的Znode;zookeeper即使重启也不会丢失

临时型 -e

临时Znode是客户端断开,这个客户端创建的Znode即被删除的Znode,当客户端创建了Znode,只被这个客户端占有使用;一旦客户端停止,断开,临时的znode会被删除

顺序类型 -s

顺序Znode是Zookeeper为创建的Znode名字后追加10位顺序数字的Znode防止名字冲突;节点后会跟随一个10位数字的顺序号

角色

领导者(leader)

负责进行投票的发起和决议,更新系统状态

观察者(follower)

用于接收客户请求并向客户端返回结果,在选主过程中参与投票。

追随者(observer)

可以接收客户端连接,将请求转发给leader节点。但Observer不参加投票的过程,只同步leader的状态。Observer的目的是为了广播系统,提速读取速度。

学习者(Learner)

是跟随者和观察者

客户端(Client)

请求发起方

watcher:仿效观察者模式实现的Zookeeper的事件通知机制

监听内容:

1:znode数据改变
2:删除事件
3:子目录节点增加删除事件

zookeeper常用命令

zookeeper启动命令 zkServer.sh start
zookeeper状态查看的命令: zkServer.sh status
zookeeper关闭的命令:zkServer.sh stop
启动zookeeper客户端命令
./zkCli.sh  -server ip:port

这里ip 指定是要连接的节点的ip地址。Ip:如ip是192.168.230.121 这条命令就写为,这里的端口号默认为2181.

./zkCli.sh  -server 192.168.230.121:2181
列出“/”下面的其它的节点
`ls /`
创建临时节点,用quit命令退出或结束,会话节点消失
create -e /name1  zhangsan  
创建顺序节点
create -s  /name2 lisi    
创建临时数据节点 ( 临时数据节点zookeeper重新启动后消失)
creae -e -s  /name3  wangwu
通过名字获取节点
get /name1  
删除指定名字的节点
rmr /name2 
设置节点内容
set /name3 zhangsan 
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值