Zookeeper-02-概念

网友投稿 528 2022-11-01

Zookeeper-02-概念

Zookeeper-02-概念

本文将阐述zk中的一些概念,不会讨论这些概念是具体如何实现的

节点 节点是zk的最小存储单位,之前说过,zk类似一个文件系统,那么节点就相当于一个文件夹,节点还有子节点,子节点还有子节点 节点上有几个重要的属性,分别是 1.path:类似文件夹路径,格式是:/node1/node2 2.childNode:上边的node2就是node1的子节点 3.stat:节点状态属性,节点状态里面还包含很多属性,比较重要的就是path所对应的值和事务id

(3.1)path所对应的值,就是该节点的值,可以是任意东西,因为本质存的是字节,比方说你往节点里存一个图片,或者一个视频,都是可以的,只是原则上不应该这么做而已 (3.2)事务id,根据事务id可以知道是谁创建了该节点,谁修改了改节点

4.type:zk的节点类型

(4.1)持久节点 可以存放一些元数据,其他的还不了解,这是临时笔记 (4.2)临时节点 临时节点指的是当客户端断开连接之后,节点就会被清除掉,临时两个节点不可以拥有子节点,可以用于心跳和服务发现(配合监听watch)这种场景,如果属性ephemeralOwner不等于0,则表示这是一个临时节点,注:ephemeralOwner的值是一个seesion id (4.3)持久序号节点:类似数据库ID自增,如果有个2个线程并发操作,那么就会创建两个序号,可以用这个特性做分布式锁 (4.4)临时序号节点:同持久序号节点,但是有临时节点的特性,节点断开就会被清除

节点监听(watch机制) 比方说服务A监听节点node1,那么其他节点修改/node1的时候,节点A马上就知道,但是当其他节点再次修改/a的时候,则不会再通知节点A,也就是说监听只能用一次,需要再次监听才可以,所以代码里也应该这样写:如果触发,则再次监听

权限设置(ACL访问控制列表,access control list) 表示某个服务是否可以访问某些节点

模式(scheme):有四种scheme

1.world模式:开放模式,默认模式,谁都可以访问 2.ip模式:指定客户端ip访问 3.auth模式: 明文帐号密码 4.digestsha1+base64模式:和auth差不多,只不过是密文帐号密码

许可(permission)

1.create许可:可以创建子节点 2.delete许可:可以删除子节点,仅下一级 3.read许可:可以读取本节点数据,可以显示子节点列表,注意,不可以读取子节点数据 4.write:可以设置本节点数据 5.admin:可以设置节点列表权限(permission)

设置znode的访问权限,格式是:​​setAcl scheme:id:permission​​ 权限首字母,假设要服务A在zk上的id是aid,对zk上的node1节点有读和写的权限,则命令应该这样写

setAcl /node1 world:aid:rw

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Zeek 一个强大的网络流量分析和安全监控框架
下一篇:Propeller 是一个基于 Bootstrap 和 Google’s Material Design 语言的 CSS 组件框架
相关文章

 发表评论

暂时没有评论,来抢沙发吧~