有人知道solr4/lucene和JVM是如何管理内存的吗?
我们有以下案例。
我们有一个15 no的服务器,只运行SOLR4/Lucene和JVM (没有自定义代码)
我们分配了2 2GB的内存,JVM使用了1.9MB。在某一时刻,发生了一些事情,我们耗尽了内存。
然后我们将JVM内存增加到4 4GB,我们看到JVM开始尽可能多地使用内存。它现在使用了分配的4 4GB中的3 4GB。
这是正常的JVM内存使用吗?也就是说,JVM总是尽可能多地使用分配的空间吗?
谢谢你的帮忙
发布于 2013-03-25 13:47:38
方面正在使用字段缓存。如果你有很多用于刻面的字段(甚至很小),很可能最终你会达到内存极限。
如果你有很多的查询面或者定义了很多的FQ --在你的例子中,为每个过滤器缓存条目分配1Mb。您已经将16384定义为上限,因此您最终也可能在那里遇到较大的数字。
希望这能有所帮助。
https://stackoverflow.com/questions/15586411
复制相似问题