标签:code api apach print false ref ram demo targe
Curator的NodeCache允许你监听一个节点,当节点数据更改或者节点被删除的时候将会触发监听。
官方文档:http://curator.apache.org/curator-recipes/node-cache.html
javaDoc:http://curator.apache.org/apidocs/org/apache/curator/framework/recipes/cache/NodeCache.html
import org.apache.curator.framework.CuratorFramework; import org.apache.curator.framework.CuratorFrameworkFactory; import org.apache.curator.framework.recipes.cache.NodeCache; import org.apache.curator.retry.ExponentialBackoffRetry; public class NodeCacheDemo { private static CuratorFramework client = CuratorFrameworkFactory.newClient("localhost:2181", new ExponentialBackoffRetry(3000, 1)); private static String path = "/nodeCache/test/0001"; static { client.start(); } public static void main(String[] args) throws Exception { if (client.checkExists().forPath(path) == null) { System.out.println("not exist"); client.create().creatingParentsIfNeeded().forPath(path); } System.out.println("created"); NodeCache nodeCache = new NodeCache(client, path, false); nodeCache.getListenable().addListener(() -> System.out.println("nodeChanged")); System.out.println("add listener"); nodeCache.start(true); System.out.println("cache started"); client.setData().forPath(path, "lay".getBytes()); System.out.println("set data"); client.delete().forPath(path); System.out.println("deleted"); Thread.sleep(3000); nodeCache.close(); System.out.println("listener closed"); Thread.sleep(50000); client.close(); } }
标签:code api apach print false ref ram demo targe
原文地址:https://www.cnblogs.com/lay2017/p/10280238.html