Solr Read Timeout(仅限生产环境)

时间:2011-07-14 21:43:32

标签: java solr timeout solrj

我正在使用一个使用 SolrJ 将文档索引到Solr服务器的Java应用程序。

在我的本地测试环境中,我在Windows xp框上的Tomcat服务器上运行本地Solr实例。当我从不同的Windows框运行Java应用程序时,索引成功完成,Solr日志文件看起来正常。

但是,运行部署在linux webserver上的同一个Java应用程序与另一个运行Solr的linux webserver进行通信,我会在每个solr update命令后收到“read timed out”消息:

  

2011年7月14日上午3:12:31 org.apache.solr.core.SolrCore执行INFO:[]

     

webapp = / solr path = / update params = {wt = javabin& version = 1} status = 400   QTime = 20020 Jul 14,2011 3:12:51 AM   org.apache.solr.update.processor.LogUpdateProcessor完成INFO:{} 0   20021年7月14日上午3:12:51 org.apache.solr.common.SolrException日志   严重:org.apache.solr.common.SolrException:   java.net.SocketTimeoutException:读取超时时间   org.apache.solr.handler.XMLLoader.load(XMLLoader.java:72)at at   org.apache.solr.handler.ContentStreamHandlerBase.handleRequestBody(ContentStreamHandlerBase.java:54)     在...

     

引起:   javax.xml.stream.XMLStreamException:java.net.SocketTimeoutException:   读取超时

知道为什么会这样吗?我怀疑有些东西在启动后会关闭这些连接(例如网页过滤软件,防火墙......),但我工作场所的网络管理员说没有流量被阻止。

1 个答案:

答案 0 :(得分:0)

只有更新甚至是查询才能获得超时时间吗?

检查Linux服务器计算机上的服务器设置是否具有非常少的超时值。