用于查找solr性能问题的工具

时间:2011-01-03 13:20:53

标签: solr performance

我有一个solr服务器,随机遇到性能问题。导致qtimes更长的查询,如果我再次尝试那些,则不会花费相同的时间。 当服务器上的负载不高时,甚至会出现性能问题。

所以我想知道是否有可用的工具,或者solr中是否有任何选项可用于指出导致性能问题的问题。

使用的solrconfig.xml中的一些参数是 -

<filterCache class="solr.LRUCache" size="1024" initialSize="512" autowarmCount="1000"/>
<queryResultCache class="solr.LRUCache" size="512" initialSize="128" autowarmCount="0"/>
<documentCache class="solr.LRUCache" size="1024" initialSize="512" autowarmCount="0"/>
<enableLazyFieldLoading>true</enableLazyFieldLoading>
<queryResultWindowSize>30</queryResultWindowSize>
<queryResultMaxDocsCached>100</queryResultMaxDocsCached>
<HashDocSet maxSize="10000" loadFactor="0.75"/>

6 个答案:

答案 0 :(得分:14)

我认为你应该首先回顾一下Solr Performance Factors on the Solr Wiki。您还可以使用工具SolrMeter来帮助您对更改进行压力测试。

答案 1 :(得分:7)

如果您正在寻找长期监控,您还可以查看我公司,Sematext或其他公司的可扩展性能监控(SPM)等工具/服务。 http://sematext.com/spm/index.html

此服务将公开请求率,延迟,所有Solr缓存信息,JVM内存,GC,CPU,负载,磁盘和网络IO等。

我们吃自己的狗粮,并使用此工具监控Solr实例的Solr性能,搜索search-lucene.com和search-hadoop.com/,当我们需要帮助他们解决Solr性能问题时,我们会定期与客户一起使用它调谐。

如果您不希望上面的“正确”性能监控,那么您可以使用vmstat,iostat,sar,top,jstack等工具来解决Solr性能问题,假设您在UNIX下运行它。

答案 2 :(得分:2)

sysstat包中的'sar'实用程序非常适合调试磁盘IO问题。如果您注意到任何特定磁盘的使用率始终保持在30%左右,那么您可能已经受到IO限制。

答案 3 :(得分:1)

也许这个工具可以帮助您:LucidGaze

我没有经验,但看起来很有希望。来自Lucid的人也发表了一些有趣的文章,这些文章非常值得一读。

答案 4 :(得分:1)

我通过同时向solr服务器发出多个请求来对应用程序进行压力测试(请求由后续wgets完成)

我们开始看到性能影响,并将我们的问题缩小到两个原因:

  • 缓存大小太小,因此在缓存中发生了太多的驱逐和插入。
  • 我们使用的是solrversion1.3,它显然对索引文件使用了阻塞读取。切换到solr 1.4删除了该问题,因为它使用了使用非阻塞读取索引文件的java nio。

[我们也尝试将索引文件放在ram中并直接从那里使用它,这提高了性能(但显然不可扩展)]

答案 5 :(得分:0)

我正在经历SOLR内存泄漏超过一年,并且不得不重新调整服务器五天作为问题的解决方法,最终我发现监控工具RELIC导致了问题,我们删除了监控和问题已经解决了,所以我的建议是在使用太多监控工具时要小心,这会给性能带来开销。