Do java flags Xms and Xmx overwrite flag XX:+UseCGroupMemoryLimitForHeap?

后端 未结 2 1038
猫巷女王i
猫巷女王i 2020-12-19 02:55

I\'m running a containerized java application in Kubernetes.

In order to make the jvm reserve memory according to the container specifications, the flags -XX:+

2条回答
  •  误落风尘
    2020-12-19 03:55

    The -Xmx flag overwrites the -XX:+UseCGroupMemoryLimitForHeap flag.

    The flag -XX:+UseCGroupMemoryLimitForHeap lets the JVM detect what the max heap size in a container should be.

    The -Xmx flag set the max heap size to a fixed size.

    To answer your example, the JVM would reserve 2500M heap space. There will be some additional memory usage for non-heap and jvm stuff.

    To further tune your memory usage in a container you could use the -XX:MaxRAMFraction flag. See this article: https://blog.csanchez.org/2017/05/31/running-a-jvm-in-a-container-without-getting-killed/

提交回复
热议问题