Zookeeper之Shell和API 操作
来源:互联网 发布:c语言for的用法小技巧 编辑:程序博客网 时间:2024/06/11 12:56
Zookeeper的Shell操作:
1.连接到Zookeeper服务
[root@service zookeeper0]# bin/zkCli.sh -server localhost:2181
2.使用ls命令查看当前Zookeeper中包含的内容。
# ls /
3.创建新的znode,使用create命令
# create /zk testCRUD
4.获取节点中的值,get命令
# get /zk
5.使用set命令来对znode关联的字符串进行设置
# set /zk myData
6.删除节点
# delete /zk
Zookeeper的java API操作
public class ZooKeeperTest {
private ZooKeeper zookeeper;
/**
* 连接zookeeper
* @throws Exception
*/
@Before
public void setUp() throws Exception {
String conStr = "service.bigdata.jack.cn:2181";
int sessionTimeout = 30000;
zookeeper = new ZooKeeper(conStr, sessionTimeout , new Watcher() {
@Override
public void process(WatchedEvent event) {
System.out.println("已经触发了" + event.getType() + "事件!");
}
});
}
@Test
public void testCRUD() throws Exception {
// 创建一个目录节点
zookeeper.create("/testZK", "testZKData".getBytes(), Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
// 创建一个子目录节点
zookeeper.create("/testZK/childOne", "childOne".getBytes(),Ids.OPEN_ACL_UNSAFE,CreateMode.PERSISTENT);
System.out.println(new String(zookeeper.getData("/testZK",false,null)));
// 取出子目录节点列表
System.out.println(zookeeper.getChildren("/testZK",true));
// 修改子目录节点数据
zookeeper.setData("/testZK/childOne","modifyChildDataOne".getBytes(),-1);
System.out.println("目录节点状态:["+zookeeper.exists("/testZK",true)+"]");
// 创建另外一个子目录节点
zookeeper.create("/testZK/childTwo", "childTwo".getBytes(),
Ids.OPEN_ACL_UNSAFE,CreateMode.PERSISTENT);
System.out.println(new String(zookeeper.getData("/testZK/childTwo",true,null)));
// 删除子目录节点
zookeeper.delete("/testZK/childTwo",-1);
zookeeper.delete("/testZK/childOne",-1);
// 删除父目录节点
zookeeper.delete("/testZK",-1);
}
@After
public void cleanUp() throws InterruptedException {
zookeeper.close();
}
}
1.连接到Zookeeper服务
[root@service zookeeper0]# bin/zkCli.sh -server localhost:2181
2.使用ls命令查看当前Zookeeper中包含的内容。
# ls /
3.创建新的znode,使用create命令
# create /zk testCRUD
4.获取节点中的值,get命令
# get /zk
5.使用set命令来对znode关联的字符串进行设置
# set /zk myData
6.删除节点
# delete /zk
Zookeeper的java API操作
public class ZooKeeperTest {
private ZooKeeper zookeeper;
/**
* 连接zookeeper
* @throws Exception
*/
@Before
public void setUp() throws Exception {
String conStr = "service.bigdata.jack.cn:2181";
int sessionTimeout = 30000;
zookeeper = new ZooKeeper(conStr, sessionTimeout , new Watcher() {
@Override
public void process(WatchedEvent event) {
System.out.println("已经触发了" + event.getType() + "事件!");
}
});
}
@Test
public void testCRUD() throws Exception {
// 创建一个目录节点
zookeeper.create("/testZK", "testZKData".getBytes(), Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
// 创建一个子目录节点
zookeeper.create("/testZK/childOne", "childOne".getBytes(),Ids.OPEN_ACL_UNSAFE,CreateMode.PERSISTENT);
System.out.println(new String(zookeeper.getData("/testZK",false,null)));
// 取出子目录节点列表
System.out.println(zookeeper.getChildren("/testZK",true));
// 修改子目录节点数据
zookeeper.setData("/testZK/childOne","modifyChildDataOne".getBytes(),-1);
System.out.println("目录节点状态:["+zookeeper.exists("/testZK",true)+"]");
// 创建另外一个子目录节点
zookeeper.create("/testZK/childTwo", "childTwo".getBytes(),
Ids.OPEN_ACL_UNSAFE,CreateMode.PERSISTENT);
System.out.println(new String(zookeeper.getData("/testZK/childTwo",true,null)));
// 删除子目录节点
zookeeper.delete("/testZK/childTwo",-1);
zookeeper.delete("/testZK/childOne",-1);
// 删除父目录节点
zookeeper.delete("/testZK",-1);
}
@After
public void cleanUp() throws InterruptedException {
zookeeper.close();
}
}
0 0
- Zookeeper之Shell和API 操作
- Zookeeper学习之源生API的使用(java与shell操作zookeeper)。
- Hbase操作shell和API
- Hbase入门API操作和 shell操作
- Zookeeper集群shell操作
- Zookeeper shell操作
- ZooKeeper shell操作
- 操作zookeeper之原生API的基本操作
- java 操作 zookeeper API
- zookeeper api 操作znode
- ZooKeeper操作api
- ZooKeeper API操作
- Zookeeper之JAVA API
- ZooKeeper之Java API
- Zoookeeper_Java API操作zookeeper 通过zookeeper.jar
- Zookeeper API 和 Zkclient
- zookeeper客户端SHELL操作命令
- ZooKeeper 常用操作API详解
- Android Studio导入android源码技巧(源码无需编译即可导入)
- 网络请求队列
- 第二次尝试开发——我选择死亡 2017.05.07
- 【Python】相关语法知识点
- oracle11g PL/SQL编程摘要
- Zookeeper之Shell和API 操作
- 【Reading Notes】CP2-Surface Shaders and Texture Mapping
- Spring学习六:基于注解的配置方法
- 关于li之间存在空白字符的问题
- 20170507@Vector集合
- MapReduce Learn Test
- JAVA 对字符串进行MD5加密
- C语言源程序(.c)如何变成可执行程序(.exe)
- 欢迎使用CSDN-markdown编辑器