Ignite以“设置最大直接内存大小(如果获取'OOME:直接缓冲内存')开头”(添加'-XX:MaxDirectMemorySize =“

时间:2018-05-10 15:43:50

标签: apache ignite

我的点火服务器有128G RAM,Xmx 10G堆外70G,启动时,日志显示:

[11:30:27,376][INFO][main][IgniteKernal] Performance suggestions for grid  (fix if possible)
[11:30:27,377][INFO][main][IgniteKernal] To disable, set -DIGNITE_PERFORMANCE_SUGGESTIONS_DISABLED=true
[11:30:27,377][INFO][main][IgniteKernal]   ^-- Set max direct memory size if getting 'OOME: Direct buffer memory' (add '-XX:MaxDirectMemorySize=<size>[g|G|m|M|k|K]' to JVM options)

我有搜索网络,我发现这篇文章说没有必要配置MaxDirectMemorySize,http://apache-ignite-users.70518.x6.nabble.com/Do-we-require-to-set-MaxDirectMemorySize-JVM-parameter-td21200.html 一些文章说默认的MaxDirectMemorySize与Xmx相同,所以我应该为这个选项配置什么,我只是感到困惑,如果它没用,为什么点燃转储建议日志来解决这个问题?

2 个答案:

答案 0 :(得分:2)

这并不表示失败,您可以忽略此建议,除非您的节点/群集因直接缓冲内存中的OOM而失败。这是一个选项,使您能够控制可以分配多少直接内存,否则它将使用您正在使用的JVM使用默认的直接内存策略进行控制。 Ignite仅检查它是否在JVM选项中设置。

您在应用中的直接缓冲内存中是否遇到过OOME问题?

问候。

答案 1 :(得分:0)

当程序从NIO libray调用函数时,某些文件操作(例如读写)使用直接缓冲存储器。

由于存在错误,如果未指定其值,则设置Xmx ...它是从Xmx复制的。

直接缓冲存储器的默认值为64 Mb(如果不设置,也不要设置Xmx)。

我建议MaxDirectMemorySize = 64或256 Mb

更大的价值:也许您看不到错误,但是我怀疑您会获得更好的性能。

相关问题