zk特性

session的基本原理

  • 客户端服务端之间的链接存在会话
  • 每个会话都可以设置超时时间
  • 心跳结束 session过期
  • session过期 临时节点znode会被抛弃
  • 心跳机制,客户端向服务端的ping包请求。

watcher机制

  • 针对每个节点的操作,都会有一个监督者-》watcher
  • 当监控的某个对象znode发生了变化,就会触发watcher事件
  • zk的watcher是一次性的,触发后立即销毁。
  • 父节点、子节点增删改都能触发watcher
  • 针对不同类型的操作,触发的watcher事件不同。
  1. 节点(子)创建事件
    2.节点(子)删除事件
    3.节点(子)数据变化事件

watcher事件类型 1

get path watch

  • 创建父节点触发
  • 父节点数据更改触发
  • 删除父节点触发

watcher事件类型 2

ls path watch

  • 创建子节点触发 NodeChildrenChanged
  • 删除子节点触发 NodeChildrenChanged

watcher使用场景

  • 统一资源配置

ACL权限控制

access control lists

  • 针对节点可以设置相关读写权限,为了保障数据安全性
  • 权限可以指定不同的权限范围及角色

ACL命令行

  • getAcl 获取节点的acl权限信息
  • setAcl 设置节点的acl权限信息
  • addauth 输入认证授权信息,注册时输入明文登录

acl的构成

zk的acl通过[scheme:id:permissions]来构成权限列表
scheme:代表采用的某种权限机制
id:代表允许访问的用户
permissions:权限组合字符串

你可能感兴趣的:(zk特性)