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很 ...
随机推荐
- L1-1 天梯赛座位分配
天梯赛每年有大量参赛队员,要保证同一所学校的所有队员都不能相邻,分配座位就成为一件比较麻烦的事情.为此我们制定如下策略:假设某赛场有 N 所学校参赛,第 i 所学校有 M[i] 支队伍,每队 10 位 ...
- HashSet存储过程中如何排除不同的自定义对象?
HashSet HashSet存储过程中如何排除不同的自定义对象? 先看一个小demo public class Demo1 { public static void main(String[] ar ...
- mkvirtualenv创建python虚拟环境
为什么要创建虚拟环境呢? 如果在我们本地开发好几个项目,每个项目又用到很多第三方插件,如果没没用创建虚拟环境,那么本地项目插件就会很多很乱,如果有虚拟环境就不一样了 虚拟环境安装 pip instal ...
- Comparación para 2019 Nueva Lonsdor K518S y K518ISE
Comparación para 2019 Nueva Lonsdor K518S y Lonsdor K518ISE: Igual: Capacidades de Immo y cobertura ...
- 基于spring和mybatis的简单项目流程
Mybatis整合Spring配置 第一部分:配置Spring框架 配置SpringMVC的步骤 配置流程图 SpringMVC配置 导入包(基本包5个,1日志依赖包,2webmvc支持包) 构建一个 ...
- kafka监控服务搭建
wget https://github.com/Morningstar/kafka-offset-monitor/releases/download/0.4.1/KafkaOffsetMonitor- ...
- (转)Linux-HA开源软件Heartbeat(配置篇)
原文:http://ixdba.blog.51cto.com/2895551/548625 http://gzsamlee.blog.51cto.com/9976612/1828870 Linux-H ...
- python+unittest+requests实现接口自动化
前言: Requests简介 Requests 是使用 Apache2 Licensed 许可证的 HTTP 库.用 Python 编写,真正的为人类着想. Python 标准库中的 urllib2 ...
- 【C语言】-指针和字符串
本文目录 字符串回顾 一.用指针遍历字符串的所有字符 二.用指针直接指向字符串 三.指针处理字符串的注意 说明:这个C语言专题,是学习iOS开发的前奏.也为了让有面向对象语言开发经验的程序员,能够快速 ...
- 基于Metronic4.1的Bootstrap脚本样式说明
虽说Bootstrap作为当下最流行的响应式的UI,但是对于一些在Bootstrap基础上扩展的UI的资料算是少之又少.这里楼主结合这一个月的辛酸把那些脚本跟样式整理一下下... 关于Metronic ...