我正在使用SolrJ将索引文档索引到Solr服务器的Java应用程序。
在我的本地testing环境中,我在Windows XP上的Tomcat服务器上运行本地Solr实例。 当我从一个不同的Windows框中运行Java应用程序时,索引成功完成,Solr日志文件看起来很正常。
然而,运行在linux webserver上部署的相同的Java应用程序与运行Solr的另一个Linuxnetworking服务器通信,每次solr更新命令后,我都会收到“read timed out”消息:
2011年7月14日上午03时12分31秒org.apache.solr.core.SolrCore执行信息:[]
- 在同一台Apache机器上主持ssl和非ssl站点
- 如何在Ubuntu 2.2中启用IP和虚拟名称访问?
- 不能用PHP安装GD
- HA的2个服务器的最佳解决scheme
- 已安装PHP-GD,但未在RedHat 5.5 Enterprise中激活
webapp = / solr path = / update params = {wt = javabin&version = 1} status = 400 QTime = 20020 2011年7月14日上午3:12:51 org.apache.solr.update.processor.LogUpdateProcessor完成INFO:{} 0 20021 2011年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 org.apache.solr.handler.ContentStreamHandlerBase.handleRequestBody(ContentStreamHandlerBase.java:54)at …
引起:javax.xml.stream.XMLStreamException:java.net.SocketTimeoutException:读取超时
任何想法,为什么这可能会发生? 我的怀疑是有些东西在启动后closures这些连接(例如网页过滤软件,防火墙…),但是我的工作场所的networkingpipe理员说没有stream量被阻塞。
这也是奇怪的,为什么这个工程在Windows上,而不是在Linux上。
几个线索:
tcpdump嗅探networkingstream量,并在Wireshark打开跟踪,看看发生了什么? 希望这有帮助,祝你好运 !