私は solr を使用しており、ネットワーク経由で分散された lucene インデックスを検索しています。アービターからサーチャー (solr) にクエリを送信し、結果を取得します。
一部のクエリは、サーチャーで完了するまでに長時間 (1 分以上) かかり、他のクエリの検索が遅くなります。
クエリが指定された時間以上かかる場合に検索をキャンセルするように、solr のタイムアウトを設定するにはどうすればよいですか?
私は solr を使用しており、ネットワーク経由で分散された lucene インデックスを検索しています。アービターからサーチャー (solr) にクエリを送信し、結果を取得します。
一部のクエリは、サーチャーで完了するまでに長時間 (1 分以上) かかり、他のクエリの検索が遅くなります。
クエリが指定された時間以上かかる場合に検索をキャンセルするように、solr のタイムアウトを設定するにはどうすればよいですか?
setTimeAllowed 関数がそれを行います!
public SolrQuery setTimeAllowed(Integer milliseconds)
このクエリに許可される最大時間を設定します。クエリに指定されたミリ秒よりも長い時間がかかる場合、タイムアウトが発生し、部分的な (または何も返されない) 結果が返される場合があります。指定された Integer が null の場合、このパラメーターはリクエストから削除されます
Parameters:
milliseconds - the time in milliseconds allowed for this query