- 使用 Spring Initializr 创建 Spring Boot 应用程序
- 在Spring Boot中配置Cassandra
- 在 Spring Boot 上配置 Tomcat 连接池
- 将Camel消息路由到嵌入WildFly的Artemis上
本文整理了Java中org.apache.pulsar.zookeeper.ZooKeeperDataCache.getAsync()
方法的一些代码示例,展示了ZooKeeperDataCache.getAsync()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ZooKeeperDataCache.getAsync()
方法的具体详情如下:
包路径:org.apache.pulsar.zookeeper.ZooKeeperDataCache
类名称:ZooKeeperDataCache
方法名:getAsync
暂无
代码示例来源:origin: org.apache.pulsar/pulsar-zookeeper-utils
/**
* Return an item from the cache
*
* If node doens't exist, the value will be not present.s
*
* @param path
* @return
* @throws Exception
*/
public Optional<T> get(final String path) throws Exception {
return getAsync(path).get();
}
代码示例来源:origin: org.apache.pulsar/pulsar-broker
LOG.info("Failed to acquire ownership of {} -- Already owned by other broker", path);
ownershipReadOnlyCache.getAsync(path).thenAccept(ownerData -> {
if (LOG.isDebugEnabled()) {
LOG.debug("Found owner for {} at {}", bundle, ownerData);
代码示例来源:origin: org.apache.pulsar/pulsar-broker
ZooKeeperDataCache<Policies> policiesCache = pulsar.getConfigurationCache().policiesCache();
policiesCache.getAsync(path(POLICIES, namespaceName)).thenAccept(policies -> {
if (!policies.isPresent() || StringUtils.isBlank(policies.get().antiAffinityGroup)) {
antiAffinityNsBrokersResult.complete(null);
CompletableFuture<Void> future = new CompletableFuture<>();
futures.add(future);
policiesCache.getAsync(path(POLICIES, ns)).thenAccept(nsPolicies -> {
if (nsPolicies.isPresent() && antiAffinityGroup.equalsIgnoreCase(nsPolicies.get().antiAffinityGroup)) {
brokerToAntiAffinityNamespaceCount.compute(broker,
代码示例来源:origin: org.apache.pulsar/pulsar-broker
/**
* Method to get the current owner of the <code>ServiceUnit</code>
*
* @param suId
* identifier of the <code>ServiceUnit</code>
* @return The ephemeral node data showing the current ownership info in <code>ZooKeeper</code>
* @throws Exception
* throws exception if no ownership info is found
*/
public CompletableFuture<Optional<NamespaceEphemeralData>> getOwnerAsync(NamespaceBundle suname) {
String path = ServiceUnitZkUtils.path(suname);
CompletableFuture<OwnedBundle> ownedBundleFuture = ownedBundlesCache.getIfPresent(path);
if (ownedBundleFuture != null) {
// Either we're the owners or we're trying to become the owner.
return ownedBundleFuture.thenApply(serviceUnit -> {
// We are the owner of the service unit
return Optional.of(serviceUnit.isActive() ? selfOwnerInfo : selfOwnerInfoDisabled);
});
}
// If we're not the owner, we need to check if anybody else is
return ownershipReadOnlyCache.getAsync(path);
}
代码示例来源:origin: org.apache.pulsar/pulsar-broker-common
public CompletableFuture<Boolean> checkPermission(TopicName topicName, String role, AuthAction action) {
CompletableFuture<Boolean> permissionFuture = new CompletableFuture<>();
try {
configCache.policiesCache().getAsync(POLICY_ROOT + topicName.getNamespace()).thenAccept(policies -> {
if (!policies.isPresent()) {
if (log.isDebugEnabled()) {
代码示例来源:origin: org.apache.pulsar/pulsar-broker-common
CompletableFuture<Boolean> permissionFuture = new CompletableFuture<>();
try {
configCache.policiesCache().getAsync(POLICY_ROOT + topicName.getNamespace()).thenAccept(policies -> {
if (!policies.isPresent()) {
if (log.isDebugEnabled()) {
代码示例来源:origin: org.apache.pulsar/pulsar-broker
pulsar.getConfigurationCache().clustersCache().getAsync(path("clusters", cluster))
.thenAccept(clusterDataResult -> {
if (clusterDataResult.isPresent()) {
代码示例来源:origin: org.apache.pulsar/pulsar-broker
private CompletableFuture<Boolean> isDeduplicationEnabled() {
TopicName name = TopicName.get(topic.getName());
return pulsar.getConfigurationCache().policiesCache()
.getAsync(AdminResource.path(POLICIES, name.getNamespace())).thenApply(policies -> {
// If namespace policies have the field set, it will override the broker-level setting
if (policies.isPresent() && policies.get().deduplicationEnabled != null) {
return policies.get().deduplicationEnabled;
}
return pulsar.getConfiguration().isBrokerDeduplicationEnabled();
});
}
代码示例来源:origin: org.apache.pulsar/pulsar-broker
checkNotNull(configurationCacheService);
checkNotNull(configurationCacheService.policiesCache());
checkNotNull(configurationCacheService.policiesCache().getAsync(globalPath));
configurationCacheService.policiesCache().getAsync(globalPath).thenAccept(policies -> {
if (policies.isPresent()) {
代码示例来源:origin: org.apache.pulsar/pulsar-broker
final String path = AdminResource.path(POLICIES, namespace.toString());
pulsarService.getConfigurationCache().policiesCache().getAsync(path).thenAccept(policiesResult -> {
if (policiesResult.isPresent()) {
Policies policies = policiesResult.get();
代码示例来源:origin: org.apache.pulsar/pulsar-broker
/**
* Gets configured dispatch-rate from namespace policies. Returns null if dispatch-rate is not configured
*
* @return
*/
public DispatchRate getPoliciesDispatchRate() {
final NamespaceName namespace = TopicName.get(this.topicName).getNamespaceObject();
final String cluster = brokerService.pulsar().getConfiguration().getClusterName();
final String path = path(POLICIES, namespace.toString());
Optional<Policies> policies = Optional.empty();
try {
policies = brokerService.pulsar().getConfigurationCache().policiesCache().getAsync(path)
.get(cacheTimeOutInSec, SECONDS);
} catch (Exception e) {
log.warn("Failed to get message-rate for {} subscription {}", this.topicName, this.subscriptionName, e);
}
// return policy-dispatch rate only if it's enabled in policies
return policies.map(p -> {
DispatchRate dispatchRate;
if (subscriptionName == null) {
dispatchRate = p.clusterDispatchRate.get(cluster);
} else {
dispatchRate = p.subscriptionDispatchRate.get(cluster);
}
return isDispatchRateEnabled(dispatchRate) ? dispatchRate : null;
}).orElse(null);
}
如何使用 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 运行,我必须为其分配另一个端口。我
我是一名优秀的程序员,十分优秀!