openjdk java -XX:MaxRAMFraction docker容器内自动调整内存限制-Xmx

利用openjdk -XX:MaxRAMFraction参数,不同参数值结果如下

[yeqiang@localhost testproj]$ docker run -m 1G -it --rm  adoptopenjdk/openjdk8 java -XX:MaxRAMFraction=1 -XshowSettings:vm  -version
VM settings:
    Max. Heap Size (Estimated): 989.88M
    Ergonomics Machine Class: server
    Using VM: OpenJDK 64-Bit Server VM

openjdk version "1.8.0_262"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_262-b10)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.262-b10, mixed mode)
[yeqiang@localhost testproj]$ docker run -m 1G -it --rm  adoptopenjdk/openjdk8 java -XX:MaxRAMFraction=2 -XshowSettings:vm  -version
VM settings:
    Max. Heap Size (Estimated): 494.94M
    Ergonomics Machine Class: server
    Using VM: OpenJDK 64-Bit Server VM

openjdk version "1.8.0_262"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_262-b10)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.262-b10, mixed mode)
[yeqiang@localhost testproj]$ docker run -m 1G -it --rm  adoptopenjdk/openjdk8 java -XX:MaxRAMFraction=3 -XshowSettings:vm  -version
VM settings:
    Max. Heap Size (Estimated): 330.62M
    Ergonomics Machine Class: server
    Using VM: OpenJDK 64-Bit Server VM

openjdk version "1.8.0_262"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_262-b10)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.262-b10, mixed mode)
[yeqiang@localhost testproj]$ docker run -m 1G -it --rm  adoptopenjdk/openjdk8 java -XX:MaxRAMFraction=4 -XshowSettings:vm  -version
VM settings:
    Max. Heap Size (Estimated): 247.50M
    Ergonomics Machine Class: server
    Using VM: OpenJDK 64-Bit Server VM

openjdk version "1.8.0_262"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_262-b10)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.262-b10, mixed mode)

默认=4

[yeqiang@localhost testproj]$ docker run -m 1G -it --rm  adoptopenjdk/openjdk8 java -XshowSettings:vm  -version
VM settings:
    Max. Heap Size (Estimated): 247.50M
    Ergonomics Machine Class: server
    Using VM: OpenJDK 64-Bit Server VM

openjdk version "1.8.0_262"
OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_262-b10)
OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.262-b10, mixed mode)

猜你喜欢

转载自blog.csdn.net/hknaruto/article/details/107516170