超时后停止solr搜索

时间:2013-05-21 07:26:17

标签: java-ee solr lucene

我正在使用solr并通过网络搜索分布式lucene索引。我将仲裁者的查询发送给搜索者(solr),然后得到结果。

有些查询需要花费大量时间(超过一分钟)才能完成搜索,并且会减慢搜索其他查询的速度。

如何为solr设置超时,以便在查询超过指定时间时取消搜索?

1 个答案:

答案 0 :(得分:4)

setTimeAllowed函数做到了!

public SolrQuery setTimeAllowed(Integer milliseconds)

设置此查询允许的最长时间。如果查询花费的时间超过指定的毫秒数,则会发生超时,并且可能会返回部分(或否)结果。如果给定的Integer为null,则从请求中删除此参数

Parameters:  
milliseconds - the time in milliseconds allowed for this query