04_zookeeper的watcher机制
【watcher简述】
* zk针对每个节点的操作,都会有一个监督者:watcher
* 当监控的某个对象(znode)发生了变化,则出发watcher
* zk中的watcher是一次性的,出发后立即销毁
* 父节点,子节点增删改都能触发其watcher
* 针对不同类型的操作,触发的watcher事件也不同:
1.节点/节点的子节点 创建事件
2.节点/节点的子节点 删除事件
3.节点/节点的子节点 节点数据变化事件

【设置watcher】
get path [watch]
stat path [watch]
父节点 增删改 触发watcher
子节点 增删改 触发watcher
【watcher事件】
【父节点事件类型】
[ 创建父节点触发:NodeCreated ]

WATCHER:: WatchedEvent state:SyncConnected type:NodeCreated path:/father
Created /father ========================================
/**
* WatchedExent被触发
* 事件类型:创建节点类型 NodeCreated
* 路径:/father
*/
[ 修改父节点数据触发:NodeDataChanged ]

[ 删除父节点触发:NodeDeleted ]

【子节点事件类型】
ls path [watch]
[示例1:ls设置创建子节点事件]
ls为父节点设置watcher,创建子节点会触发NodeChildrenChanged事件

[ 示例2:ls设置删除子节点的操作 ]
ls为父节点设置watcher,删除子节点触发:NodeChildrenChanged

[ 注意 ]
使用 ls 命令为父节点设置watcher,修改子节点的值不会触发事件。
如果希望修改子节点的值也触发事件,应该把字节点当成父节点,使用get path [watch]命令
get path [watch]

改成下边这种get方式即可

04_zookeeper的watcher机制的更多相关文章
- 【Zookeeper】源码分析之Watcher机制(一)
一.前言 前面已经分析了Zookeeper持久话相关的类,下面接着分析Zookeeper中的Watcher机制所涉及到的类. 二.总体框图 对于Watcher机制而言,主要涉及的类主要如下. 说明: ...
- 【Zookeeper】源码分析之Watcher机制(二)
一.前言 前面已经分析了Watcher机制中的第一部分,即在org.apache.zookeeper下的相关类,接着来分析org.apache.zookeeper.server下的WatchManag ...
- 【Zookeeper】源码分析之Watcher机制(三)之Zookeeper
一.前言 前面已经分析了Watcher机制中的大多数类,本篇对于ZKWatchManager的外部类Zookeeper进行分析. 二.Zookeeper源码分析 2.1 类的内部类 Zookeeper ...
- Zookeeper的Watcher 机制的实现原理
基于 Java API 初探 zookeeper 的使用: 先来简单看一下API的使用: public class ConnectionDemo { public static void main(S ...
- Zookeeper watcher机制
一.watcher机制 1.针对每个节点的操作,都会有一个监督者-> watcher 2.当监控的某个对象(znode)发生了变化,则触发watcher事件 3.zk中的watcher是一次性的 ...
- 【Zookeeper】源码分析之Watcher机制(二)之WatchManager
一.前言 前面已经分析了Watcher机制中的第一部分,即在org.apache.zookeeper下的相关类,接着来分析org.apache.zookeeper.server下的WatchManag ...
- Zookeeper的Watcher机制
ZooKeeper 提供了分布式数据的发布/订阅功能, 在 ZooKeeper 中引入了 Watcher 机制来实现这种分布式的通知功能. ZooKeeper 允许客户端向服务端注册一个 Watche ...
- zk的watcher机制的实现
转载:https://www.ibm.com/developerworks/cn/opensource/os-cn-apache-zookeeper-watcher/ http://blog.csdn ...
- 品味ZooKeeper之Watcher机制_2
品味ZooKeeper之Watcher机制 本文思维导图如下: 前言 Watcher机制是zookeeper最重要三大特性数据节点Znode+Watcher机制+ACL权限控制中的其中一个,它是zk很 ...
随机推荐
- java web 工程创建及servlet简单使用
1.java web工程创建 (1)File--->new--->project (2)选择java enterprise,按照下图操作 (3)点击next后,会进入如下界面,修改工程名后 ...
- Opencv ValueError: not enough values to unpack (expected 3, got 2)解决办法
问题背景 有些人在用我去年的毕设运行时(感谢QAQ),报错 Opencv ValueError: not enough values to unpack (expected 3, got 2) 当时就 ...
- 论文阅读 | FoveaBox: Beyond Anchor-based Object Detector
论文阅读——FoveaBox: Beyond Anchor-based Object Detector 概述 这是一篇ArXiv 2019的文章,作者提出了一种新的anchor-free的目标检测框架 ...
- Jenkins windows部署
1.安装jenkins 进入https://jenkins.io/download/,下载windows安装包,解压后运行jenkins.msi进行安装. 配置jenkins (1)打开http:// ...
- PyCharm 通过Github和Git上管理代码
1.最近希望通过github来管理代码,记录下pycharm上的设置,以下是针对windows版本.mac版本略有却别 如图所示 file-settings-Version Control-GitHu ...
- Oracle 创建数据库卡死在85%
Oracle 创建数据库卡死在85%处理方法 1.首先用改工具,删除数据库 2.对应的目录 3.重启服务器(本次尝试有重启,在有其他数据库在跑的情况下,可以试试不重启)
- vue开发的一些设置以及技巧
引入其它css样式 需要加~ @找到的是src目录 对于常用的路径可以设置别名 @代表src 常用的地址在webpack.base.conf.js中 ...
- CSS生成小三角
前言:小三角的应用场景:鼠标移动到某个按钮上面,查看信息详情时,信息详情弹出框有时候会需要一个小三角. 代码如下: <div id='triangle'></div> #tri ...
- ubuntu 修改 ls 下的目录颜色
ubuntu 下, ls 显示的目录的颜色,怎么说呢,看起来太费劲了. 于是想着修改成容易识别的颜色. 于是搜索了一下. 这里列举三个搜到的教程吧. 简单说我按这上面的方法做了,然后都失败了. 1. ...
- Hibernate 一对多自身关联(同一表中子父目录树形结构)