Zookeeper watch参照表
Watcher 设置是开发中最常见的,需要搞清楚watcher的一些基本特征,对于exists、getdata、getchild对于节点的不同操 作会收到不同的 watcher信息。对父节点的变更以及孙节点的变更都不会触发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 | × | 
 
                     
                    
                 
                    
                 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号