【发布时间】:2020-07-18 09:18:46
【问题描述】:
我尝试将文档和查询结果缓存的大小设置为零,但它仍然没有被禁用。我在这些缓存中看到很多驱逐,因为它的大小为零。 如何完全禁用除 solr 中的过滤器缓存之外的所有其他缓存。
这是我的 solr 配置 sn-p。
-->
<!-- disabled -->
<queryResultCache class="solr.LRUCache"
size="0"
initialSize="0"
autowarmCount="0"/>
<!-- Document Cache
Caches Lucene Document objects (the stored fields for each
document). Since Lucene internal document ids are transient,
this cache will not be autowarmed.
-->
<!-- disabled -->
<documentCache class="solr.LRUCache"
size="0"
initialSize="0"
autowarmCount="0"/>
编辑 1
注释、设置 enable=false 或将大小设置为零在 solrconfig 中不起作用
如果我们在 q 参数中传递 cache=false,那么我可以关闭 queryResult 缓存,但仍然找不到关闭文档缓存的方法
【问题讨论】:
-
您应该能够设置
enabled="false"为缓存禁用它。另一种选择可能是完全删除定义,但我不确定在这种情况下它是否会创建默认缓存。 -
肯定会尝试,在文档中没有找到“启用”选项。我将运行 2 个单独的测试,一个启用 false,另一个将其注释掉。
-
不适用于评论或零大小
-
参数是
enabled,不是enable。还要确保您实际上是在重新加载配置 - 即,如果您在云模式下运行 Solr,则您正在将配置上传到 Zookeeper。您是否看到状态页面中反映了大小的变化?您可以在此处的示例中查看enabled参数的用法:github.com/apache/lucene-solr/blob/… -
是的,将其上传到 Zookeeper 也会看到变化。我使用 enable 是因为在 solrConfig 中 lru 缓存由 enable param 控制,请参阅此
... 我会在启用的情况下再试一次