【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机制的更多相关文章

  1. 【Zookeeper】源码分析之Watcher机制(一)

    一.前言 前面已经分析了Zookeeper持久话相关的类,下面接着分析Zookeeper中的Watcher机制所涉及到的类. 二.总体框图 对于Watcher机制而言,主要涉及的类主要如下. 说明: ...

  2. 【Zookeeper】源码分析之Watcher机制(二)

    一.前言 前面已经分析了Watcher机制中的第一部分,即在org.apache.zookeeper下的相关类,接着来分析org.apache.zookeeper.server下的WatchManag ...

  3. 【Zookeeper】源码分析之Watcher机制(三)之Zookeeper

    一.前言 前面已经分析了Watcher机制中的大多数类,本篇对于ZKWatchManager的外部类Zookeeper进行分析. 二.Zookeeper源码分析 2.1 类的内部类 Zookeeper ...

  4. Zookeeper的Watcher 机制的实现原理

    基于 Java API 初探 zookeeper 的使用: 先来简单看一下API的使用: public class ConnectionDemo { public static void main(S ...

  5. Zookeeper watcher机制

    一.watcher机制 1.针对每个节点的操作,都会有一个监督者-> watcher 2.当监控的某个对象(znode)发生了变化,则触发watcher事件 3.zk中的watcher是一次性的 ...

  6. 【Zookeeper】源码分析之Watcher机制(二)之WatchManager

    一.前言 前面已经分析了Watcher机制中的第一部分,即在org.apache.zookeeper下的相关类,接着来分析org.apache.zookeeper.server下的WatchManag ...

  7. Zookeeper的Watcher机制

    ZooKeeper 提供了分布式数据的发布/订阅功能, 在 ZooKeeper 中引入了 Watcher 机制来实现这种分布式的通知功能. ZooKeeper 允许客户端向服务端注册一个 Watche ...

  8. zk的watcher机制的实现

    转载:https://www.ibm.com/developerworks/cn/opensource/os-cn-apache-zookeeper-watcher/ http://blog.csdn ...

  9. 品味ZooKeeper之Watcher机制_2

    品味ZooKeeper之Watcher机制 本文思维导图如下: 前言 Watcher机制是zookeeper最重要三大特性数据节点Znode+Watcher机制+ACL权限控制中的其中一个,它是zk很 ...

随机推荐

  1. Java的定时调度

    一般在web开发中定时调度比较有用,因为要维护一个容器不关闭才可以一直定时操作下去. 定时调度:每当一段时间之后,程序就会自动执行,就称为定时调度.如果要使用定时调动,则必须要保证程序要始终运行着,也 ...

  2. Linux云服务器下Tomcat部署

    基于阿里云Centos 7服务器的Tomcat 项目部署 工具:一台安装jdk1.8的Centos 6/7.X 云服务器(64位) Putty  ssh远程连接云服务器的软件 FileZillaCli ...

  3. 一个迷你的 Node.js 基于 Express 的 MVR 模式的 API工程 的分析

    1. 工程说明 该工程是基于 Express 库,编写的一个 API 查询返回的一个微型应用. API Resource 就是把 API 的内容当做网络资源去处理.工程中的路由访问也是返回 API 内 ...

  4. gitlab之gitlab-runner自动部署(二)

    转载自:https://blog.csdn.net/hxpjava1/article/details/78514999 简介 gitlab-ci全称是gitlab continuous integra ...

  5. ngx_echo_module

    https://github.com/openresty/echo-nginx-module echo $echo_request_body

  6. 《数据密集型应用系统设计》读书笔记-ch1可靠、可扩展与可维护的应用系统

    我们以Twitter为例,使用其2012年11月发布的数据.Twitter的两个典型业务操作是: - 发布tweet消息: 用户可以快速推送新消息到所有的关注者,平均大约4.6k request/se ...

  7. js操作cookie的函数

    ///设置cookiefunction setCookie(NameOfCookie, value, expiredays) { var ExpireDate = new Date(); Expire ...

  8. shiro入门与认证原理

    一.shiro介绍 1.什么是shiro  shiro是apache的一个开源框架,是一个权限管理的框架,实现 用户认证.用户授权. 2.shiro的优点  (1)shiro将安全认证相关的功能抽取出 ...

  9. html控件

    checkbox val = "<li class='layer'><label><input type='checkbox' checked name='la ...

  10. 【关于eclipse的一些自己常用的插件】

    代码自动走查: sonarlnt: