如何正确使用 JVM -XX:MaxRAM 选项?
How JVM -XX:MaxRAM option can be correctly used?
我运行一个具有以下参数的java应用程序:
#!/bin/bash
export JVM_OPTS="-XX:MaxRAM=150m"
export JVM_OPTS="$JVM_OPTS -XX:+UseSerialGC"
java $JVM_OPTS -jar application.jar
htop
显示:
- VIRT=475M
- RES=238M
- SHR=4880
- MEM%=24.1
据我了解,我需要查看RES
参数。但在这种情况下,却大大超过了-XX:MaxRAM
。预计在这种情况下,OutOfMemoryException
会发生。我究竟做错了什么?如何限制容器的 java 应用程序的内存?我是否错误地查看了已使用的进程内存?
我想尽量减少使用的 RAM。 OS - 分OS 7
-XX:MaxRAM
选项只影响 .
Java 进程使用的内存(从OS 的角度来看)不仅包括Java 堆,还包括许多其他东西。有关详细信息,请参阅 。
我运行一个具有以下参数的java应用程序:
#!/bin/bash
export JVM_OPTS="-XX:MaxRAM=150m"
export JVM_OPTS="$JVM_OPTS -XX:+UseSerialGC"
java $JVM_OPTS -jar application.jar
htop
显示:
- VIRT=475M
- RES=238M
- SHR=4880
- MEM%=24.1
据我了解,我需要查看RES
参数。但在这种情况下,却大大超过了-XX:MaxRAM
。预计在这种情况下,OutOfMemoryException
会发生。我究竟做错了什么?如何限制容器的 java 应用程序的内存?我是否错误地查看了已使用的进程内存?
我想尽量减少使用的 RAM。 OS - 分OS 7
-XX:MaxRAM
选项只影响
Java 进程使用的内存(从OS 的角度来看)不仅包括Java 堆,还包括许多其他东西。有关详细信息,请参阅