【发布时间】:2011-02-17 13:37:19
【问题描述】:
我是 solr 的新手。 我开发了一个使用 solr 进行索引的网站。 我想处理 solr 读写索引期间可能发生的超时。请指导我如何处理这些异常。 我使用 solrj 作为 solr 客户端,我的网站和 solr 服务器在 tomcat 上运行。
谢谢你!
【问题讨论】:
-
什么时候得到这些超时?你多久提交一次?检查 Solr 日志,看看是否没有任何警告或错误。
-
您好毛里科,感谢您的关注!当我触发搜索查询时,我会遇到这些超时。这些异常并不常见。我在我的 tomcat 日志中收到读取超时异常:org.apache.solr.client.solrj.SolrServerException:java.net.SocketTimeoutException: Read timed out at org.apache.solr.client.solrj.impl.CommonsHttpSolrServer.request (CommonsHttpSolrServer.java:243) 在 org.apache.solr.client.solrj.SolrServer.optimize(SolrServer.java:94) 在 org.apache.solr.client.solrj.SolrServer.optimize(SolrServer.java:82) 。 ..... .....
-
堆栈跟踪显示超时发生在优化操作期间,而不是查询期间...您每次触发查询时都在优化吗?
-
是的,我在查询 solr 之前正在优化。同样在查询被触发后,我再次提交服务器。我应该这样做吗?
-
嗨 Mauricio,我在触发查询之前测试了我的代码而没有优化服务器,我之前的假设是错误的。我不确定是否要优化它。但是你仍然可以指导我何时提交和多久一次?当我对服务器执行删除或添加索引时,我正在提交服务器。它好吗?