我用的是弹簧引导2。如果我用了:
导出_JAVA_OPTIONS=-Xmx756m
然后:
java -XX:+PrintFlagsFinal -version -iE‘HeapSize_PermSize\ThreadStackSize’
intx CompilerThreadStackSize = 0 {pd product}
uintx ErgoHeapSizeLimit = 0 {product}
uintx HeapSizePerGCThread = 87241520 {product}
uintx InitialHeapSize := 16777216 {product}
uintx LargePageHeapSizeThreshold = 134217728 {product}
uintx MaxHeapSize := 792723456 {product}
intx ThreadStackSize = 1024 {pd product}
intx VMThreadStackSize = 1024 {pd product}但如果我重新加载控制台。MaxHeapSize被重置。
它并没有改变什么:
java -XshowSettings:all
VM settings:
Max. Heap Size (Estimated): 237.81M
Ergonomics Machine Class: client
Using VM: OpenJDK 64-Bit Server VM如果我这样做了:
nohup java -Dspring.profiles.active=dev -Xmx660m -jar /home/ec2-user/project.jar >test.out 2>&1 &在text.out中:
nohup: ignoring input
VM settings:
Max. Heap Size: 660.00M
Ergonomics Machine Class: client
Using VM: OpenJDK 64-Bit Server VM但是,如果我手动输入java -XshowSettings:all,没有什么改变:
VM settings:
Max. Heap Size (Estimated): 237.81M
Ergonomics Machine Class: client
Using VM: OpenJDK 64-Bit Server VM以及:
uintx MaxHeapSize := 257949696 {product}总内存:1GB
发布于 2019-05-24 09:25:38
但如果我重新加载控制台。MaxHeapSize被重置。
这不是JVM的工作方式。为了使您的内存相关更改发生,必须重新启动java程序。不可能动态地应用jvm设置
https://stackoverflow.com/questions/56288500
复制相似问题