问题标签 [apache-curator]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1765 浏览

apache-zookeeper - 如何检查现有 Zookeeper 临时节点的超时?

我知道 Zookeeper Server 有一个名为“tickTime”的配置(最小心跳时间 =2*ticktime),客户端可以请求“会话超时”。

建立连接时..它会获得与之相关的会话超时。这是在客户端和服务器之间协商的。

如何找到他们都确定的价值?

0 投票
1 回答
2525 浏览

java - Apache Curator - Zookeeper 连接丢失异常,可能存在内存泄漏

我一直在研究一个持续监控分布式原子长计数器的过程。它使用以下类ZkClient的方法每分钟监视一次getCounter。事实上,我有多个线程运行,每个线程都在监视存储在 Zookeeper 节点中的不同计数器(分布式原子长)。每个线程通过getCounter方法的参数指定计数器的路径。

在线程中,这就是我调用此方法的方式:

现在似乎在线程运行了几个小时之后,在一个阶段,我开始在尝试读取计数org.apache.zookeeper.KeeperException$ConnectionLossException的方法中收到以下异常:getCounter

org.apache.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode = ConnectionLoss for /contentTaskProd at org.apache.zookeeper.KeeperException.create(KeeperException.java:99) at org.apache.zookeeper.KeeperException.create(KeeperException.java:51)在 org.apache.zookeeper.ZooKeeper.exists(ZooKeeper.java:1045) 在 org.apache.zookeeper.ZooKeeper.exists(ZooKeeper.java:1073) 在 org.apache.curator.utils.ZKPaths.mkdirs(ZKPaths.java :215) 在 org.apache.curator.RetryLoop.callWithRetry(RetryLoop.java:107) 在 org.apache.curator.utils 的 org.apache.curator.utils.EnsurePath$InitialHelper$1.call(EnsurePath.java:148) .EnsurePath$InitialHelper.ensure(EnsurePath.java:141) 在 org.apache.curator.utils.EnsurePath.ensure(EnsurePath.java:99) 在 org.apache。curator.framework.recipes.atomic.DistributedAtomicValue.getCurrentValue(DistributedAtomicValue.java:254) 在 org.apache.curator.framework.recipes.atomic.DistributedAtomicValue.get(DistributedAtomicValue.java:91) 在 org.apache.curator.framework。 recipes.atomic.DistributedAtomicLong.get(DistributedAtomicLong.java:72) ...

我一直从那里得到这个异常一段时间,我觉得它导致了一些内部内存泄漏,最终导致 OutOfMemory 错误并且整个过程退出。有谁知道这可能是什么原因?为什么 Zookeeper 会突然开始抛出连接丢失异常?进程退出后,我可以通过我编写的另一个小型控制台程序(也使用 curator)手动连接到 Zookeeper,并且一切看起来都很好。

0 投票
2 回答
1770 浏览

apache-zookeeper - 与 Curator 和 Zookeeper 一起选举领导者

我正在运行 3 个 ZooKeeper 实例,配置如下:

我正在使用此处给出的领导选举示例代码: https ://git-wip-us.apache.org/repos/asf?p=curator.git;a=tree;f=curator-examples/src/main/java /leader;h=73b547eadb98995c0ccbd06a5b76d0741ffef263;hb=HEAD

代码在 TestingServer 上运行良好,但是当我将连接字符串更改为 :"127.0.0.1:2181,127.0.0.1:2182,127.0.0.1:2183"时,出现异常:

可能是什么问题?

0 投票
2 回答
2754 浏览

java - 如何使用 Curator 在单个 ZooKeeper znode 中存储字符串列表

例如,有一个 znode 路径A/B/C/D。我想在那个 znode 上存储一个字符串列表。显然,我可以使用将字符串列表加入单个字符串,然后将其序列化为字节数组,如下所示:

但这看起来不是很方便。还有其他方法吗?

0 投票
1 回答
3593 浏览

apache-zookeeper - Zookeeper 连接超时问题

我们使用 2.3.0 版本的 curator-framework 连接来连接 pom 文件中的 zookeeper。

这在高负载服务器中使用,该服务器多次将数据泵入 kafka,我们时不时地收到以下错误。我尝试使用谷歌搜索,但找不到问题的确切原因和解决方案。寻找有关如何解决此问题的想法。

0 投票
0 回答
484 浏览

java - NoClassDefFoundError during Tomcat graceful shutdown

We are getting NoClassDefFoundErrors during Tomcat graceful shutdown process (i.e. using catalina.sh stop command). We are using Tomcat version 6.0.44.

Note that this error can not be reproduced consistently. Another question suggests class loader related problems during execution of JVM shutdown hook. But in this case, the error is raised during the execution of the ServletFilter::destroy(...) method.

Could you please provide any insight?

0 投票
1 回答
435 浏览

apache-zookeeper - 为什么我需要使用 curator 而不是 zookeeper 原生 API 作为分布式锁?

我们的项目严重依赖分布式锁。我知道curator提供了几种锁。我的问题是,我可以将创建节点用作互斥体吗?

当第一个进程创建成功时,第二个进程得到 NodeExistsException异常。如果这行不通,我想知道原因。

0 投票
1 回答
747 浏览

java - 在 Curator Leader Election 示例中调用其他节点

Apache CuratorLeader selector 示例代码为例,在担任 Leader 的同时执行一些任务很容易,但是我们如何在 Leader 选举过程中将任务分配给其他参与者呢?

例如,如果一个节点有方法

我想让领导告诉这个其他参与者节点执行工作,我该怎么做?

0 投票
5 回答
11535 浏览

apache - 尝试创建 zNode 时 Apache Curator 未实现的错误

我正在尝试将 Apache Curator 与 dockerized zookeeper 实例一起使用,无论我如何尝试连接,我总是以

org.apache.zookeeper.KeeperException$UnimplementedException: KeeperErrorCode = Unimplemented for...

错误。我已经尝试理解文档,但我没有得到任何结果。我已登录 zookeeper CLI 并确保端口号正确:

这是我尝试使用的代码:

据我从策展人入门页面可以看出,这应该可行。我错过了什么?

edit1 刚刚发现我能够从 zookeeper 合奏中提取数据:

但创建命令仍在爆炸。

编辑2

错误的堆栈跟踪:

org.apache.zookeeper.KeeperException$UnimplementedException: KeeperErrorCode = org.apache.zookeeper.KeeperException.create(KeeperException.java:103) 的 /larry-smells/foop 在 org.apache.zookeeper.KeeperException.create(KeeperException. java:51) 在 org.apache.zookeeper.ZooKeeper.create(ZooKeeper.java:1297) 在 org.apache.curator.framework.imps.CreateBuilderImpl$17.call(CreateBuilderImpl.java:1040) 在 org.apache.curator。 framework.imps.CreateBuilderImpl$17.call(CreateBuilderImpl.java:1023) at org.apache.curator.connection.StandardConnectionHandlingPolicy.callWithRetry(StandardConnectionHandlingPolicy.java:67) at org.apache.curator.RetryLoop.callWithRetry(RetryLoop.java:99 ) 在 org.apache 的 org.apache.curator.framework.imps.CreateBuilderImpl.pathInForeground(CreateBuilderImpl.java:1020)。curator.framework.imps.CreateBuilderImpl.protectedPathInForeground(CreateBuilderImpl.java:501) at org.apache.curator.framework.imps.CreateBuilderImpl.forPath(CreateBuilderImpl.java:491) at org.apache.curator.framework.imps.CreateBuilderImpl$4 .forPath(CreateBuilderImpl.java:367) 在 org.apache.curator.framework.imps.CreateBuilderImpl$4.forPath(CreateBuilderImpl.java:309) 在 com.mycompany.app.App.main(App.java:35)主要(App.java:35)主要(App.java:35)

0 投票
1 回答
101 浏览

java - Netflix 策展人交易错误

创建路径时,我在以下代码中收到 NodeExists 错误。

因此,在此它试图在第一次创建后再次创建 foo 。有什么办法可以在创建路径时检查事务的状态,以便在事务 /foo create 中存在,然后它不会再次创建。