zoukankan      html  css  js  c++  java
  • Zookeeper如何正确设置和获取watcher

    Watcher 设置是开发中最常见的,需要搞清楚watcher的一些基本特征,对于exists、getdata、getchild对于节点的不同操作会收到不同的 watcher信息

     

    state=-112 会话超时状态
    state= -113 认证失败状态
    state=  1 连接建立中
    state= 2 (暂时不清楚如何理解这个状态,ZOO_ASSOCIATING_STATE)
    state=3 连接已建立状态
    state= 999 无连接状态


    type=1 创建节点事件
    type=2 删除节点事件
    type=3 更改节点事件
    type=4 子节点列表变化事件
    type= -1 会话session事件
    type=-2 监控被移除事件

    父节点的变更以及孙节点的变更都不会触发watcher,而对watcher本身节点以及子节点的变更会触发watcher,具体参照下表。

    操作 方法 触发watcher watcher state watcher type watcher path
    Create当前节点 getdata × × × ×
    getchildren 3 4
    exists × × × ×
    set当前节点 getdata 3 3
    getchildren × × × ×
    exists 3 3
    delete当前节点 getdata 3 2
    getchildren 3 2
    exists 3 2
    create子节点 getdata × × × ×
    getchildren 3 4
    exists × × × ×
    set子节点 getdata × × × ×
    getchildren × × × ×
    exists × × × ×
    delete子节点 getdata × × × ×
    getchildren 3 4
    exists × × × ×
    恢复连接 getdata 1 -1 ×
    getchildren 1 -1 ×
    exists 1 -1 ×
    恢复连接session未超时 getdata -112 -1 ×
    getchildren -112 -1 ×
    exists -112 -1 ×
    恢复连接session超时 getdata 3 -1 ×
    getchildren 3 -1 ×
    exists 3 -1 ×

    注:×表示否,√表示是。
    本文来自 曾经的学渣 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/qq910894904/article/details/41726279?utm_source=copy 

  • 相关阅读:
    Educational Codeforces Round 30 B【前缀和+思维/经典原题】
    Educational Codeforces Round 30 A[水题/数组排序]
    洛谷 P2415 集合求和【数学公式/模拟】
    洛谷 P2689 东南西北【模拟/搜索】
    洛谷 P1012 拼数 [字符串]
    codeforces 869C The Intriguing Obsession【组合数学+dp+第二类斯特林公式】
    洛谷 P3927 SAC E#1
    洛谷P3929 SAC E#1
    洛谷P3926 SAC E#1
    codeforces 868B The Eternal Immortality【暴力+trick】
  • 原文地址:https://www.cnblogs.com/wangleBlogs/p/9728763.html
Copyright © 2011-2022 走看看