2017-02-21 95 views
0

显然,Solr或其捆绑的Jetty都有某种请求超时。当我发出需要一点时间的查询时,Solr总是首次返回“套接字挂断”错误。如果我下次重新发出相同的查询,正确的结果将很快返回。对于我的生活,我无法弄清楚在哪里控制这个超时。指定“timeAllowed”作为查询的一部分不会有帮助。我正在使用Solr v6.3.0。任何指针赞赏。Solr重置查询连接

回答

0

我假设你的客户端和你的Solr在不同的机器上。

如果是这样,我会真正看看你的客户端和你的Solr之间是否有防火墙。他们有超时,如果没有流量发生在他们身上,切断中间的连接。

您可以使用Wireshark等工具来验证此功能,也可以使用与Solr相同的机器使用curl发出您的查询。

+0

谢谢,但事实并非如此。两台服务器都在同一台机器上本地运行。来自Solr管理页面的相同查询会发生同样的问题。在失败后立即重新发出查询将快速返回并显示正确的结果。 –

+0

那么也许你的文档(存储的字段)非常大,它们从磁盘重新创建时间太长。查询在套接字超时和下一次打到文档或查询缓存后继续。 –

+0

我相信是这样。该查询会执行多个连接,因此需要一些时间,大概10秒左右。但是,我的问题是 - 我可以通过一些配置设置来控制Solr/Jetty端的套接字超时限制吗? –