- 使用 Spring Initializr 创建 Spring Boot 应用程序
- 在Spring Boot中配置Cassandra
- 在 Spring Boot 上配置 Tomcat 连接池
- 将Camel消息路由到嵌入WildFly的Artemis上
本文整理了Java中org.apache.pulsar.zookeeper.ZooKeeperClientFactory
类的一些代码示例,展示了ZooKeeperClientFactory
类的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ZooKeeperClientFactory
类的具体详情如下:
包路径:org.apache.pulsar.zookeeper.ZooKeeperClientFactory
类名称:ZooKeeperClientFactory
暂无
代码示例来源: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();
如何使用 Pulsar 管理 API(或)获取 Pulsar 中特定消息的到期日期?有什么方法可以查明特定消息是否已过期? 最佳答案 https://pulsar.apache.org/docs/en
简介 我们正在开发一个系统来支持多个实时消息(聊天)和更新(事件通知)。 也就是说,用户 A 可以通过 Web Socket 接收消息: 接收新的聊天消息 接收某些事件的更新,例如,如果有人喜欢他们的
Pulsar 允许多个生产者订阅同一个主题,前提是他们的生产者名称不同。有没有办法检查是否已经存在具有相同名称(和相同主题)的生产者? 最佳答案 您可以使用 stats来自 pulsar-admin
在 Apache Pulsar 主题文档中,它说我们可以将主题时间保留策略设置为 -1 以实现基于无限时间的保留,无限保留的缺点是什么,我们可以使用 pulsar 作为消息存储,其中数据永远存在于主题
使用 pulsar 为每个散列动态创建一个主题(或分区),并在不再使用时删除主题(或分区),这是可能的和好的场景吗? 这个想法是能够以有序的方式读取具有相同散列的数据,而无需在具有相同散列的两条消息之
我认为一个简单的例子可以更好地描述我的问题。 例如,假设有一个名为“A”的主题,我已经生成了 100 条消息 (message1...message100)。我已经使用独占类型的订阅“A_1”使用并确
问题 一个月前我向 pulsar 添加了 2 个 bookie,但我意识到这是浪费资源。我怎样才能将博彩公司从 7 个减少到 3 个。 我的努力 通过 bookkeeper 的文档,我发现当 book
如 Pulsar Schema Registry Docs 中的示例所示 Producer producer = client.newProducer(JSONSchema.of(User.class
问题 一个月前我向 pulsar 添加了 2 个 bookie,但我意识到这是浪费资源。我怎样才能将博彩公司从 7 个减少到 3 个。 我的努力 通过 bookkeeper 的文档,我发现当 book
如 Pulsar Schema Registry Docs 中的示例所示 Producer producer = client.newProducer(JSONSchema.of(User.class
我正在尝试找出从 Pulsar 主题中删除所有消息(逻辑上或物理上)的最佳方法,以便订阅不再使用它们? 我知道我们可以简单地执行 $ pulsar-admin persistent delete pe
我用 Spring boot 编写了一个简单的 Apache Pulsar 客户端——一个初始化为 bean 的 pulsar-producer,它将在 rest controller 中用于将传入的
我们一直在尝试在我们的 2.8.1 Apache Pulsar 集群上添加 JWT 身份验证,它似乎工作正常,但权限除外。所以基本上,我们现在的状态是: 没有 token ,客户端会收到 401 使用
我对 java 消息监听器 和 apache pulsar 还很陌生。假设我已经维护了一个这样的监听器, private MessageListener generateListener() {
我发现即使我的 Pulsar 客户端已启动并正在运行,非持久性消息有时也会丢失。那些非持久化的消息在吞吐量很高(很短的时间内超过1000条消息。我个人认为这并不高)时丢失。如果我增加参数 receiv
跨地域复制是 Apache Pulsar 企业级特性的重要组成部分,它保证了系统的高可用,在操作和管理上也非常便捷,今天用 5 张图来带大家学习这个功能。 1.多机房部署 Pulsar 多机
我根本无法安装文档中提到的 pulsar-client: pip3 install pulsar-client Collecting pulsar-client ERROR: Could not fi
Apache Pulsar 支持的最大消息大小是多少? 我尝试阅读文档。但我找不到任何相关信息。 最佳答案 默认的最大消息大小为 5242880 字节 (5 MiB),但可以调整。有关详细信息,请参阅
尝试在我的kubernetes集群中部署Pod和一些Pod给了我一些存储问题的错误。屏幕截图如下: 我确定问题出在我的一个工作节点上。我认为 pulsar 不是问题。我还将在这里共享YAML文件,
我想将 pulsar 与 apache airflow 一起运行。问题是两者都在端口号 8080 上运行。我不想更改 Airflow 的配置,但为了让 pulsar 运行,我必须为其分配另一个端口。我
我是一名优秀的程序员,十分优秀!