queryResultWindowSize in Solr Pagination



我了解什么是queryResultWindowSize和queryResultMaxDocsCached。

查询 1 -> q=car&rows=10&start=0

查询 2 -> q=car&rows=10&start=10

(假设查询 1 和 2 是用户 1 的连续查询)

查询 3 -> q=船&行=10&开始=0

查询 4 -> q=car&rows=10&start=10

(假设查询 3 和 4 是用户 2 的连续查询)

my queryResultWindowSize = 20 and queryResultMaxDocsCached = 20。当用户发出查询 1 时,将缓存 20 个文档。因此,接下来的 10 个分页文档已在缓存中准备就绪。如果用户 2 发出查询 3,缓存会过期吗?或者缓存用于单个查询?solr 是否分别为查询 1 和查询 3 做缓存?

缓存是 pr. 查询。通常,它将匹配执行的查询并使用它来查找正确的缓存,然后从该缓存返回值。这意味着 query1 和 query3 将被单独缓存(否则 Solr 只能缓存最新的查询,这在大多数生产设置中不会很有帮助)。

最新更新