【发布时间】:2015-09-24 13:54:25
【问题描述】:
如果运行查询的时间过长,我会尝试让 Solr 超时。
我的尝试:
根据 Solr 文档,timeAllowed 参数完全符合我的要求,我已经尝试过
- 在solrConfig.xml中将
<int name="timeAllowed">50</int>添加到requestHadnler; - 在请求URL中添加
timeAllowed参数:
localhost:8080/solr4/alfresco/select?q=*&timeAllowed=50
但它不起作用(加载结果的时间超过了提供的值)。
我为什么要这样做:我们在 Solr 端实现了访问权限验证,现在对于像 * 这样的一些模糊查询,Solr 需要太多时间来响应。
也许可以关闭来自 Alfresco 或 Web 容器的此类连接,但随后此类查询将在 Solr 内部运行,从而降低服务器速度。
【问题讨论】:
-
您是否在进行更改后重新加载了核心?
-
此外,请求需要多长时间?响应头中的 QTime 是什么? Solr 只会考虑响应在服务器上的时间,因此直到 Solr 被命中的时间、通过网络返回给您的时间以及客户端解析响应所需的时间不包括在 500 毫秒内。跨度>
标签: solr settimeout alfresco solr4