watch机制原理
Watch机制的原理是利用一种类似于“观察者模式”的设计模式,让某个对象(被观察者)的状态发生变化时,所有依赖于它的对象(观察者)都会得到通知并自动更新。
具体来说,Watch机制的原理包括以下步骤:
- 注册观察者:当一个观察者需要监听某个对象的状态变化时,它会向该对象注册自己,成为该对象的观察者。
- 状态变化通知:当被观察者的状态发生变化时,它会通知所有注册的观察者,告诉它们自己的状态已经发生了变化。
- 更新观察者:观察者收到通知后,会根据自己的需要更新自己的状态或执行相应的操作。
Watch机制的优点在于,它可以让多个观察者同时监听同一个对象的状态变化,并且当状态发生变化时,所有的观察者都会自动更新,而不需要手动去调用更新方法。这大大简化了代码的编写和调试过程,提高了系统的可维护性和可扩展性。
zk客户端实现watch机制
一、客户端实现监听原理
使用了NIO通信模式监听服务器的调用
二、zkCli.sh相关命令
1、创建一次性监听
get -w /test
2、监听目录,创建和删除子节点会收到通知,子节点中新增节点不会收到通知
ls -w /test
3、监听子节点中子节点的变化,比如子节点创建子节点,但是内容变化不会收到通知
ls -R -w /test
三、curator实现监听
至此,你已经掌握了关于Zookeeper的Watch机制的概念和使用方法,后续还会持续更新,敬请期待~~~