2016-10-19 241 views
0

在Cloudera平臺上使用SolrCloud 4.10.3,其中每個3個分片具有2個集合,每個集合包含3個節點solr集羣。 集合1:大小:15.3 GB集合2:大小:1.2GBSolrCloud - 內存不足

我們的堆大小爲8GB,堆外15GB。我們爲我們的一個集合中的一個實時饋送solr(另一個非常靜態)。我們經常發現內存不足的錯誤。

任何人都可以幫助我們瞭解原因嗎?我們應該有額外的碎片來傳播負載嗎?或者我們需要繼續給予更多的堆內存嗎?所有的cloudera堆圖表明我們發現堆空間(我們很少超過6.5GB)並且GC暫停不是問題。

感謝

+1

難道你的錯誤是「java.lang.OutOfMemoryError:無法創建新的本地線程」?如果是這樣,那麼問題不是內存,而是「最大用戶進程」的數量(如果你使用的是Linux)。在這種情況下,只需提高限制。 –

回答

1

最好的辦法應該是Solr的雲升級到6.2.1 版本。

如果節點是32位拱,它也取決於節點體系結構。那麼堆大小超過2GB不會工作,如果該節點是64位拱你可以分配更多的堆大小,但可以產生gc開銷錯誤。

所以更好地更新solr並添加更多的分片和副本以避免錯誤。