本文整理了Java中org.apache.pulsar.zookeeper.ZooKeeperClientFactory.create()
方法的一些代码示例,展示了ZooKeeperClientFactory.create()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ZooKeeperClientFactory.create()
方法的具体详情如下:
包路径:org.apache.pulsar.zookeeper.ZooKeeperClientFactory
类名称:ZooKeeperClientFactory
方法名:create
[英]Return a future yielding a connected ZooKeeper client
[中]返回一个未来,生成一个连接的ZooKeeper客户端
代码示例来源:origin: org.apache.pulsar/pulsar-zookeeper-utils
public void start() throws IOException {
CompletableFuture<ZooKeeper> zkFuture = zlClientFactory.create(globalZkConnect, SessionType.AllowReadOnly,
zkSessionTimeoutMillis);
// Initial session creation with global ZK must work
try {
ZooKeeper newSession = zkFuture.get(10, TimeUnit.SECONDS);
// Register self as a watcher to receive notification when session expires and trigger a new session to be
// created
newSession.register(this);
zkSession.set(newSession);
} catch (InterruptedException | ExecutionException | TimeoutException e) {
LOG.error("Failed to establish global zookeeper session: {}", e.getMessage(), e);
throw new IOException(e);
}
}
代码示例来源:origin: org.apache.pulsar/pulsar-zookeeper-utils
protected void asyncRestartZooKeeperSession() {
// schedule a re-connect event using this as the watch
LOG.info("Re-starting global ZK session in the background...");
CompletableFuture<ZooKeeper> zkFuture = zlClientFactory.create(globalZkConnect, SessionType.AllowReadOnly,
zkSessionTimeoutMillis);
zkFuture.thenAccept(zk -> {
if (zkSession.compareAndSet(null, zk)) {
LOG.info("Successfully re-created global ZK session: {}", zk);
} else {
// Other reconnection happened, we can close the session
safeCloseZkSession(zk);
}
}).exceptionally(ex -> {
LOG.warn("Failed to re-create global ZK session: {}", ex.getMessage());
// Schedule another attempt for later
scheduledExecutor.schedule(() -> {
asyncRestartZooKeeperSession();
}, 10, TimeUnit.SECONDS);
return null;
});
}
代码示例来源:origin: org.apache.pulsar/pulsar-zookeeper-utils
public void start(ShutdownService shutdownService) throws IOException {
// Connect to local ZK
CompletableFuture<ZooKeeper> zkFuture = zkClientFactory.create(zkConnect, SessionType.ReadWrite,
(int) zkSessionTimeoutMillis);
try {
localZooKeeper = zkFuture.get(zkSessionTimeoutMillis, TimeUnit.MILLISECONDS);
localZooKeeperSessionWatcher = new ZooKeeperSessionWatcher(localZooKeeper, zkSessionTimeoutMillis,
shutdownService);
localZooKeeperSessionWatcher.start();
localZooKeeper.register(localZooKeeperSessionWatcher);
} catch (Exception e) {
throw new IOException("Failed to establish session with local ZK", e);
}
}
代码示例来源:origin: org.apache.pulsar/pulsar-broker
arguments.configurationStore);
ZooKeeperClientFactory zkfactory = new ZookeeperClientFactoryImpl();
ZooKeeper localZk = zkfactory.create(arguments.zookeeper, SessionType.ReadWrite, 30000).get();
ZooKeeper configStoreZk = zkfactory.create(arguments.configurationStore, SessionType.ReadWrite, 30000).get();
代码示例来源:origin: org.apache.pulsar/pulsar-proxy
/**
* Initialize ZooKeeper session and creates broker cache list
*
* @param zookeeperServers
* @throws Exception
*/
public ZookeeperCacheLoader(ZooKeeperClientFactory factory, String zookeeperServers, int zookeeperSessionTimeoutMs) throws Exception {
this.zkClient = factory.create(zookeeperServers, SessionType.AllowReadOnly, zookeeperSessionTimeoutMs).get();
this.localZkCache = new LocalZooKeeperCache(zkClient, this.orderedExecutor);
this.brokerInfo = new ZooKeeperDataCache<LoadManagerReport>(localZkCache) {
@Override
public LoadManagerReport deserialize(String key, byte[] content) throws Exception {
return ObjectMapperFactory.getThreadLocal().readValue(content, LoadManagerReport.class);
}
};
this.availableBrokersCache = new ZooKeeperChildrenCache(getLocalZkCache(), LOADBALANCE_BROKERS_ROOT);
this.availableBrokersCache.registerListener((path, brokerNodes, stat) -> {
try {
updateBrokerList(brokerNodes);
} catch (Exception e) {
log.warn("Error updating broker info after broker list changed.", e);
}
});
// Do initial fetch of brokers list
try {
updateBrokerList(availableBrokersCache.get());
} catch (NoNodeException nne) { // can happen if no broker started yet
updateBrokerList(Collections.emptySet());
}
}
代码示例来源:origin: org.apache.pulsar/pulsar-broker
ZooKeeperClientFactory zkClientFactory = new ZookeeperBkClientFactoryImpl(executor);
ZooKeeper zk = zkClientFactory.create(brokerConfig.getZookeeperServers(),
ZooKeeperClientFactory.SessionType.ReadWrite,
(int)brokerConfig.getZooKeeperSessionTimeoutMillis()).get();
内容来源于网络,如有侵权,请联系作者删除!