Zookeeper

简介

在这里插入图片描述
作用:

  • 中间件,提供协调服务
  • 作用于分布式系统

安装与使用

zoo.cfg文件
在这里插入图片描述
在这里插入图片描述

sh bin/zkServer.sh start
sh bin/zkServer.sh status
sh bin/zkServer.sh stop

基本数据模型

>类似linux的文件系统
>每个节点称为znode,分为临时和永久节点,有版本号(乐观锁),可设置权限
在这里插入图片描述

作用体现:

  1. master节点选举
  2. 集群数据的强一致性(统一配置文件管理)
  3. 发布和订阅
  4. 分布式锁

特性与命令

通过 ./zhCli.sh 打开客户端

ls / : 查看根目录下的节点
get /test : 获取/test节点的值及状态
stat / : 查看节点状态
ls2 / : ls /和stat /一起使用的效果
create /test test : 创建节点及值 create -e /test/tem2 test : 创建临时节点,此时get ephemeralOwner值不是0*0(说明是临时节点) create -s /test/tem2
test :
创建顺序节点(递增) set /test aa : 修改 set /test ab 1
带有版本号(乐观锁) delete /test2 : 删除

在这里插入图片描述
在这里插入图片描述

watcher机制

使用场景:
在这里插入图片描述
用法:
在这里插入图片描述
在这里插入图片描述

get /test watch : 等等 设置父节点watch事件

在这里插入图片描述

acl 权限

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
permissions:cdrwa(create,read,write,delete.admin)

setAcl /test world:anyone:crwa(设置没有删除子节点权限)

addauth digest zhao:zhao(登陆)
auth:zhao:zhao:crwa
setAcl /test ip:172.27.49.732:crdwa(基于ip设置权限)

zk四字命令

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

echo ruok | nc localhost 2181
echo conf | nc localhost 2181

集群基础知识

在这里插入图片描述
集群同步用的端口和选举用的端口

zookeeper的java原生api开发

同步或者异步创建节点,都不支持子节点的递归创建,异步有一个callback函数

ZooKeeper zk = new ZooKeeper(zkServerPath, timeout, new ZKConnect());(创建连接)
zookeeper.create(path, data, acls, CreateMode.PERSISTENT, newCreateCallBack(), ctx);(创建节点)
Stat status = zkServer.getZookeeper().setData(“/testnode”, “xyz”.getBytes(), 0);(修改)
zkServer.getZookeeper().delete(“/test-delete-node”, 0);(删除)
byte[] resByte = zkServer.getZookeeper().getData(“/testnode”, true, stat);(获取节点数据)
zkServer.getZookeeper().getChildren(“/test2”, true);(获取子节点)
zkServer.createZKNode(“/aclimooc/testdigest”, “testdigest”.getBytes(), acls);(登陆才能访问)
zkServer.getZookeeper().addAuthInfo(“digest”, “imooc1:123456”.getBytes());(登陆)

Apache Curator客户端

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

dubbo

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值