SOLR缓存调优
来源:互联网 发布:2017淘宝游戏专营 编辑:程序博客网 时间:2024/04/30 06:23
缓存在 Solr 中充当了一个非常重要的角色,Solr 中主要有这三种缓存:
- Filter cache(过滤器缓存),用于保存过滤器(fq 参数)和层面搜索的结果
- Document cache(文档缓存),用于保存 lucene 文档存储的字段
- Query result(查询缓存),用于保存查询的结果
还有第四种缓存,lucene 内部的缓存,不过该缓存外部无法控制到。
通过这 3 种缓存,可以对 solr 的搜索实例进行调优。调整这些缓存,需要根据索引库中文档的数量,每次查询结果的条数等。
在调整参数前,需要事先得到 solr 示例中的以下信息:
- 索引中文档的数量
- 每秒钟搜索的次数
- 过滤器的数量
- 一次查询返回最大的文档数量
- 不同查询和不同排序的个数
这些数量可以在 solr admin 页面的日志模块找到。假设以上的值分别为:
- 索引中文档的数量:1000000
- 每秒钟搜索的次数:100
- 过滤器的数量:200
- 一次查询返回最大的文档数量:100
- 不同查询和不同排序的个数:500
然后可以开始修改 solrconfig.xml 中缓存的配置了,第一个是过滤器缓存:
1
<
filterCache
class
=
"solr.FastLRUCache"
size
=
"200"
initialSize
=
"200"
autowarmCount
=
"100"
/>
第二个是查询结果缓存:
1
<
queryResultCache
class
=
"solr.FastLRUCache"
size
=
"500"
initialSize
=
"500"
autowarmCount
=
"250"
/>
第三个是文档缓存:
1
<
documentCache
class
=
"solr.FastLRUCache"
size
=
"11000"
initialSize
=
"11000"
/>
这几个配置是基于以上的几个假设的值进行调优的。
如果这个参数设置为 true,不是直接请求的字段将会被延迟加载。这个可以提高性能,在查询只是查小数据量字段时,那些大内容字段将会延迟加载。
1
<
enableLazyFieldLoading
>true</
enableLazyFieldLoading
>
0 0
- SOLR缓存调优
- Solr缓存
- Solr httpCache 缓存分析
- Solr之缓存篇
- Solr之缓存篇
- Solr缓存介绍
- Solr 缓存配置
- Solr之缓存篇
- solr的缓存查询
- solr进阶五:Solr缓存技术
- Solr 6.0 学习(十三)Solr缓存
- solr性能调优
- solr调优参考
- solr调优参考
- Solr调优参考
- Solr调优参考
- solr性能调优
- Solr性能调优。
- Android常见问题总结(三)
- Android ViewDragHelper完全解析 自定义ViewGroup神器
- 推荐一款基于Java的音视频处理开源项目--JAVE
- 解决StoryBoard上cell上定义的view的背景点击后不显示的问题(其中用uiview 当作线的时候最多遇到,会不显示线 而出现不流畅问题)
- MySQL导入.sql文件及常用命令
- SOLR缓存调优
- Having的用法
- 屏幕上截图
- 三种聚类方法的简单实现
- 8大排序算法图文讲解
- matlab 稀疏张量的HOSVD 推荐系统
- PostgreSQL和MySQL的性能对比实验
- Mina框架详解
- ElasticSearch教程(二)——ElasticSearch基本插件head