2013-04-30 21 views
2

我想知道如果solrconfig.xml中的queryResultCache緩存任何東西或只是成功地處理結果?這是我不想緩存失敗的查詢結果。SOLR的queryResultCache

另外我在queryResultCache定義中看到一些名爲「autowarmCount」的屬性。

<queryResultCache 
    class="solr.LRUCache" 
    size="16384" 
    initialSize="16384" 
    autowarmCount="128"/> 

我可以指定自動預熱查詢嗎?或者可以自己弄清楚使用什麼查詢?

回答

1

queryResultCache將只存儲成功處理結果的結果。

是的,你可以指定查詢用於autowarming。從Solr Reference Guide on Caches請查看Query-Related Listeners部分,以獲取有關如何在搜索者首次創建或新創建時替代Solr中的現有搜索者時指定查詢的詳細信息。

也請注意,下列(也在參考指南):

當一個新的搜索被打開,目前的搜索繼續服務請求,而新的自動升溫緩存。新的搜索者使用當前搜索者的緩存預先填充自己的緩存。

+0

如果我可以問 - 什麼是成功處理結果? – 2013-05-10 01:28:10

+0

從沒有任何異常的查詢中執行的結果集。 – 2013-05-10 02:09:41

+0

@PaigeCook:你能澄清'queryResultCache'是否包含主查詢返回的所有結果('q'參數),還是包含所有過濾器查詢後準備的結果?否則,如何在過濾器查詢過濾之前緩存結果? (因爲否則命中率幾乎沒有,對於我的情況) – 2013-10-06 09:33:14