2012-06-21 68 views
0

我在我的webapp上使用SOLR顶部的Sunspot(Ruby/Rails)。现在,当SOLR遇到Java堆空间时,我遇到了问题。我无法弄清楚如何找到SOLR索引大小?有没有办法从命令行中找到它?获取SOLR索引大小

回答

2

如果您正在查找索引的物理磁盘大小,则可以根据solrconfig.xml中的定义查看'dataDir'下的'data/index'文件夹。例如。在示例索引中,它是example/solr/data/index文件夹。

如果您正在查找文档数量,则可以查看stats.jsp页面或搜索“”。

如果你正在寻找了解内存的使用情况,您可以用stats.jsp开始 - 看看文件数,各种现场的高速缓存大小等

恐怕你需要做更多的研究来了解你的记忆需求,描述应用和计划容量。

+0

这是正确的。通过Solr目录中的命令行获得它: 'du -S * | grep索引' –

2

您遇到的问题是由于内存使用情况,而不是物理尺寸。如果你在Windows下运行tomcat,你可以用下面的tomcat监视工具修复这个问题。我建议您根据硬件给予Solr 2048+最大值。这将解决您遇到的错误。如果您正在运行linux,则需要编辑java选项以包含-xmx2048并重新启动Tomcat。

Tomcat Memory Setting


如果你真的想看到你的索引的大小,另一种办法是复制处理程序添加到您的“solrconfig.xml中”。这个处理程序可以让你恢复你的Solr数据,但也有一个漂亮的gui,它会显示索引大小等等。

<requestHandler name="/replication" class="solr.ReplicationHandler"> 
    <str name="maxNumberOfBackups">1</str> 
</requestHandler> 

然后你就可以访问http://[SolrServer]/solr/admin/replication/index.jsp看到你的浏览器的索引大小。

0

如果你想看看你的内存消耗,我建议你使用MAT Tool欣赏!:)