package lab.anoper.zk.main;
import org.apache.zookeeper.WatchedEvent;
import org.apache.zookeeper.Watcher;
import org.apache.zookeeper.ZooKeeper;
import java.io.IOException;
import java.util.concurrent.CountDownLatch;
/**
* 简单的建立ZooKeeper连接的例子
*/
public class Sample implements Watcher{
//计数的信号量
private static CountDownLatch connectedSemaphore = new CountDownLatch(1);
public static void main(String[] args) throws IOException {
String hostPort = "192.168.32.132:2181";
ZooKeeper zk = new ZooKeeper(hostPort, 5000, new Sample());
System.out.println("Keeper state: " + zk.getState());
try {
//计数到0, 就自动被唤醒
connectedSemaphore.await();
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("ZooKeeper session established.");
}
public void process(WatchedEvent event) {
System.out.println("Receive watched event: " + event);
if (Event.KeeperState.SyncConnected == event.getState()) {
connectedSemaphore.countDown();
}
}
}
ZooKeeper Java API 创建Session连接
最新推荐文章于 2024-09-05 03:06:06 发布