• SOLR缓存调优


    缓存在 Solr 中充当了一个非常重要的角色,Solr 中主要有这三种缓存:

    • Filter cache(过滤器缓存),用于保存过滤器(fq 参数)和层面搜索的结果
    • Document cache(文档缓存),用于保存 lucene 文档存储的字段
    • Query result(查询缓存),用于保存查询的结果
    还有第四种缓存,lucene 内部的缓存,不过该缓存外部无法控制到。
    通过这 3 种缓存,可以对 solr 的搜索实例进行调优。调整这些缓存,需要根据索引库中文档的数量,每次查询结果的条数等。
    在调整参数前,需要事先得到 solr 示例中的以下信息:
    • 索引中文档的数量
    • 每秒钟搜索的次数
    • 过滤器的数量
    • 一次查询返回最大的文档数量
    • 不同查询和不同排序的个数
    这些数量可以在 solr admin 页面的日志模块找到。假设以上的值分别为:
    • 索引中文档的数量:1000000
    • 每秒钟搜索的次数:100
    • 过滤器的数量:200
    • 一次查询返回最大的文档数量:100
    • 不同查询和不同排序的个数:500
    然后可以开始修改 solrconfig.xml 中缓存的配置了,第一个是过滤器缓存:
    1
    <filterCacheclass="solr.FastLRUCache"size="200"initialSize="200"  autowarmCount="100"/>

    第二个是查询结果缓存:

    1
    <queryResultCacheclass="solr.FastLRUCache"size="500"initialSize="500"autowarmCount="250"/>

    第三个是文档缓存:

    1
    <documentCacheclass="solr.FastLRUCache"size="11000"initialSize="11000"/>

    这几个配置是基于以上的几个假设的值进行调优的。


    如果这个参数设置为 true,不是直接请求的字段将会被延迟加载。这个可以提高性能,在查询只是查小数据量字段时,那些大内容字段将会延迟加载。

    1
    <enableLazyFieldLoading>true</enableLazyFieldLoading>
  • 相关阅读:
    二逼平衡树(树套树)
    NOI2010 超级钢琴
    SDOI2011 消耗战
    HNOI2013 游走
    [SDOI2010]外星千足虫
    [UVA 11374]Airport Express
    [Luogu P1354]房间最短路问题
    [Luogu P2296][NOIP 2014]寻找道路
    高精度算法
    洛谷红名+AC150祭
  • 原文地址:https://www.cnblogs.com/cuihongyu3503319/p/9476086.html
Copyright © 2020-2023  润新知