前言
在学习Zookeeper时,判断节点是否存在,zk提供了一个很给力的方法,就是:
zk.exists(String nodePath, boolean ifWatch)
注:该方法非常好用,前面是node路径,后面是调用这个方法时,是否回调watch监测节点发生变化。
概述
ZK客户端Curator时,判断节点是否存在如下
1.cto.client.checkExists().forPath(nodePath);//Curator自带原生态的判断方法
2.cto.client.getZookeeperClient().getZooKeeper().exists(nodePath, false);
两种方案的本质区别:
方案一会在nodePath前自动添加workspace的前缀;
方案二属于把Curator返璞归真为zk原生态,所以不会自动带workspace,需要手动添加路径的前缀workspace。
本案例主要探讨解决方案,自己get到答案后,可自行对解决方案进行优化。