Zookeeper 超时,在 Zookeeper Solr 中没有错误 [英] Zookeeper timeouts without error in zookeeper Solr

查看:42
本文介绍了Zookeeper 超时,在 Zookeeper Solr 中没有错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们正面临 solr/zookeeper 的问题,其中 zookeeper 在 10000 毫秒后超时.以下错误.

We are facing issue with solr/zookeeper where zookeeper timeouts after 10000ms. Error below.

SolrException: java.util.concurrent.TimeoutException: Could not connect to ZooKeeper <server1>:9181,<server2>:9182,<server2>:9183 within 10000 ms.
at org.apache.solr.common.cloud.SolrZkClient.<init>(SolrZkClient.java:184)
at org.apache.solr.common.cloud.SolrZkClient.<init>(SolrZkClient.java:121)

我们在 zookeeper 日志中没有收到任何错误.以下日志除外

We are not getting any error in zookeeper logs.Except below logs

2018-12-19 04:35:22,305 [myid:2] - INFO  [SessionTracker:ZooKeeperServer@354] - Expiring session 0x200830234de3127, timeout of 10000ms exceeded
2018-12-19 05:35:38,304 [myid:2] - INFO  [SessionTracker:ZooKeeperServer@354] - Expiring session 0x200b4f912730086, timeout of 10000ms exceeded

在此问题期间,线程变高,我们可以在 weblogic 服务器中注意到以下内容.

During the issue threads go high and we could notice below in weblogic server.

Name: Connection evictor
State: TIMED_WAITING
Total blocked: 0  Total waited: 1
Stack trace: 
java.lang.Thread.sleep(Native Method)
org.apache.http.impl.client.IdleConnectionEvictor$1.run(IdleConnectionEvictor.java:66)
java.lang.Thread.run(Thread.java:748)

这里可能出了什么问题?

What could be going wrong here?

推荐答案

根据我的经验,ZK 超时几乎总是由于 Solr 节点上的某些原因,而不是 ZK 中的问题.

In my experience, ZK timeouts have almost always been due to something on the Solr node, rather than a problem in ZK.

您没有提供所有时间戳,但理论上是这样的:

You don't provide all the timestamps, but the theory is that:

  1. Solr 由于某种原因未能发送心跳
  2. ZK 假设客户端已经离开并关闭连接
  3. Solr 尝试使用 ZK 关闭的连接

那么为什么 Solr 节点可能无法发送心跳?这可能是因为 Solr 节点只是过载了(线程尖峰是原因还是症状?)或者只是通过很长的 GC 暂停也可以做到这一点.

So why might the Solr node fail to send the heartbeat? This could be because the Solr node was simply overloaded, (Is the thread spike a cause, or a symptom?) or just working through a very long GC pause could do it too.

这篇关于Zookeeper 超时,在 Zookeeper Solr 中没有错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆