gpt4 book ai didi

logging - ZooKeeper不断获取EndOfStreamException,从而导致崩溃

转载 作者:行者123 更新时间:2023-12-03 13:37:07 34 4
gpt4 key购买 nike

我的Zookeeper通过在每个节点中保存相关的作业数据,直到计算机准备处理为止,从而为不同的作业控制几个不同的队列。
如果我停止了总体服务,则无法启动任何作业,ZooKeeper在重新启动后可以正常运行。但是,其中一些作业似乎导致ZooKeeper崩溃,并在ZooKeeper日志中显示以下消息:

WARN  [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2181:NIOServerCnxn@349] - caught end of stream exception
EndOfStreamException: Unable to read additional data from client sessionid 0x15677f740ad002a, likely client has closed socket
at org.apache.zookeeper.server.NIOServerCnxn.doIO(NIOServerCnxn.java:220)
at org.apache.zookeeper.server.NIOServerCnxnFactory.run(NIOServerCnxnFactory.java:208)
at java.lang.Thread.run(Thread.java:745)
INFO [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2181:NIOServerCnxn@1001] - Closed socket connection for client /127.0.0.1:46998 which had sessionid 0x15677f740ad002a

我的ZooKeeper知识非常有限,因为我是从最初设置它的人那里接手的。

我试图在zookeeper shell 中删除许多带有 rmr [path]的节点,这似乎有一定效果(删除了剩余的50k +个节点/没有用),但是它每天都崩溃,昨晚我无法让它运行超过几分钟,然后再发生相同的错误/崩溃。

我如何找出造成这种情况的原因?

我很确定这是收到的数据或存储的数据/节点的一些普遍问题。磁盘仅占92%。
我也找到了这篇文章: Zookeeper keeps getting the WARN: "caught end of stream exception",但是该解决方案对我而言并没有多大意义。另外,我很确定znodes中保存的所有消息都不会超过1MB,但是我不确定如何确认这一点。

是否可以通过某种方式更改ZooKeeper日志,以便打印其他信息,例如在崩溃之前运行的znode的内容/名称?

最佳答案

我能够通过从运行ZooKeeper的服务器上删除所有Zookeeper快照和日志文件来解决此问题。我不知道为什么会有所不同,但最近22个小时一直运行良好。

关于logging - ZooKeeper不断获取EndOfStreamException,从而导致崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38887977/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com