Zookeeper实例Curator API-ZKPaths使用

本文介绍了一个使用ZKPaths API的示例程序,该程序展示了如何构造ZNode路径、创建和删除节点等基本操作。此外,还演示了如何获取子节点列表并按名称排序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ZkPaths提供了一些简单的API来构造ZNode路径、提供创建和删除节点等,其使用方式非常简单。可以看下面例子

import org.apache.curator.framework.CuratorFramework;
import org.apache.curator.framework.CuratorFrameworkFactory;
import org.apache.curator.retry.ExponentialBackoffRetry;
import org.apache.curator.utils.ZKPaths;
import org.apache.curator.utils.ZKPaths.PathAndNode;
import org.apache.zookeeper.ZooKeeper;
/**
 * 
* @ClassName: ZKPaths_Sample 
* @Description: TODO(ZKPaths使用) 
* @author RongShu
* @date 2017年6月17日 下午2:18:34 
*
 */
public class ZKPaths_Sample {

	static String path = "/curator_zkpath_sample";
	static CuratorFramework client = CuratorFrameworkFactory.builder().connectString("localhost:2181")
			.sessionTimeoutMs(5000).retryPolicy(new ExponentialBackoffRetry(1000, 3)).build();

	public static void main(String[] args) throws Exception {
		client.start();
		ZooKeeper zookeeper = client.getZookeeperClient().getZooKeeper();

		System.out.println(ZKPaths.fixForNamespace(path, "sub"));
		System.out.println(ZKPaths.makePath(path, "sub"));
		System.out.println(ZKPaths.getNodeFromPath("/curator_zkpath_sample/sub1"));

		PathAndNode pn = ZKPaths.getPathAndNode("/curator_zkpath_sample/sub1");
		System.out.println(pn.getPath());
		System.out.println(pn.getNode());

		String dir1 = path + "/child1";
		String dir2 = path + "/child2";
		ZKPaths.mkdirs(zookeeper, dir1);
		ZKPaths.mkdirs(zookeeper, dir2);
		System.out.println(ZKPaths.getSortedChildren(zookeeper, path));

		ZKPaths.deleteChildren(client.getZookeeperClient().getZooKeeper(), path, true);
	}
}
输出
/curator_zkpath_sample/sub
/curator_zkpath_sample/sub
sub1
/curator_zkpath_sample
sub1
[child1, child2]

参考

1.《从Paxos到Zookeeper:分布式一致性原理与实践》

2. http://curator.apache.org/apidocs/index.html


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值