如何正确使用JVM -XX:MaxRAM选项? [复制]

2024-01-03

我使用以下参数运行 java 应用程序:

#!/bin/bash

export JVM_OPTS="-XX:MaxRAM=150m"
export JVM_OPTS="$JVM_OPTS -XX:+UseSerialGC"

java $JVM_OPTS -jar application.jar

The htop shows:

  • 虚拟RT=475M
  • RES=238M
  • SHR=4880
  • 内存%=24.1

据我了解,我需要看看RES范围。但在这种情况下,它大大超过了-XX:MaxRAM。预计在这种情况下,OutOfMemoryException将会发生。我究竟做错了什么?如何限制容器的java应用程序的内存?我是否错误地查看了已使用的进程内存?

我想尽量减少使用的内存。操作系统 - CentOS 7


-XX:MaxRAM选项只会影响默认堆大小 https://stackoverflow.com/questions/54071798/what-is-the-difference-between-xmx-and-maxram-jvm-parameters/54076834#54076834.

Java 进程使用的内存(从操作系统的角度来看)不仅包括 Java 堆,还包括许多其他内容。看这个答案 https://stackoverflow.com/a/53624438/3448419了解详情。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何正确使用JVM -XX:MaxRAM选项? [复制] 的相关文章

随机推荐