Я использую Spring-Boot 2. Если я делаю:
export _JAVA_OPTIONS = -Xmx756m
Тогда:
Java -XX: + PrintFlagsFinal -version |grep -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}
Общий объем памяти: 1 ГБ