elasticsearch 10 Gb JVM堆内存已满,但只有1Gb字段数据缓存
我们有一个ES1.6集群,其中4个节点用于存储大部分日志数据(每秒约500个文档) ES配置10G堆,但在多次OutOfMemoryException并停止world GCs后,我们将现场数据缓存限制在10% 我的问题是,当字段数据(据我所知是Heap的主要用户之一)限制为1Gb时,为什么所有节点的JVM都在不断使用~9Gb的Heap 一些图表: 值得指出的是,我们的过滤器缓存大小要小得多(~200Mb),是的,严重限制的字段数据缓存大小确实会导致大量字段数据缓存被逐出 还有什么在使用这么多堆
elasticsearch 10 Gb JVM堆内存已满,但只有1Gb字段数据缓存,
elasticsearch,
elasticsearch,我们有一个ES1.6集群,其中4个节点用于存储大部分日志数据(每秒约500个文档) ES配置10G堆,但在多次OutOfMemoryException并停止world GCs后,我们将现场数据缓存限制在10% 我的问题是,当字段数据(据我所知是Heap的主要用户之一)限制为1Gb时,为什么所有节点的JVM都在不断使用~9Gb的Heap 一些图表: 值得指出的是,我们的过滤器缓存大小要小得多(~200Mb),是的,严重限制的字段数据缓存大小确实会导致大量字段数据缓存被逐出 还有什么在使用这么多堆
谢谢您是否有任何有用的映射可供共享,也可能有一些示例查询可以说明您是如何访问集群的?在ES中,有很多事情可能会影响堆。你能提供更多细节吗?特别是ES本身的每个节点的统计数据?ES将使用heap,而不仅仅用于fileddata。还有Lucene——它也可以广泛使用堆。你有什么有用的映射可以共享吗?也许还有一些示例查询可以说明你是如何访问集群的?在ES中有很多东西会影响堆。你能提供更多细节吗?特别是ES本身的每个节点的统计数据?ES将使用heap,而不仅仅用于fileddata。还有Lucene——它还可以广泛使用堆。