'2019/07/06'에 해당되는 글 2건

  1. 2019.07.06 java 메모리 관련...2?
  2. 2019.07.06 java.lang.OutOfMemoryError: GC overhead limit exceeded 1
Programming/Java(Spring)2019. 7. 6. 19:59

128GB 서버에서 돌리니 최대 힙 사이즈가 32기가가 잡히는것 같고

16GB 서버에서 확인해보니 InitialHeapSize 와 MaxHeapSize가 모두 1/4 크기이다.

# java -XX:+PrintFlagsFinal -version | grep -iE 'HeapSize|PermSize|ThreadStackSize'
     intx CompilerThreadStackSize                   = 0                                   {pd product}
    uintx ErgoHeapSizeLimit                         = 0                                   {product}
    uintx HeapSizePerGCThread                       = 87241520                            {product}
    uintx InitialHeapSize                          := 2109734912                          {product}
    uintx LargePageHeapSizeThreshold                = 134217728                           {product}
    uintx MaxHeapSize                              := 32210157568                         {product}
     intx ThreadStackSize                           = 1024                                {pd product}
     intx VMThreadStackSize                         = 1024                                {pd product}
openjdk version "1.8.0_212"
OpenJDK Runtime Environment (build 1.8.0_212-b04)
OpenJDK 64-Bit Server VM (build 25.212-b04, mixed mode)

[링크 : https://www.mkyong.com/java/find-out-your-java-heap-memory-size/]

 

spring boot로 실행하니(java -jar을 통해서 war 실행)

-Xms2971M -Xmx3971M -Xmn400M 으로 뜨는데 순서대로 (실수.. 카산드라 메모리였음.. -_ㅠ)

InitialHeapSize / MaxHeapSize / 마지막은 모르겠네?

아무튼.. 저 값이 기본인지 부터 확인해야 할 듯

1. -X Option (모든 VM에서 동작하지 않을 수 있는 비표준 option이며, 버젼별로 언급없이 변경되어질 수 있음)
-Xms : 초기 Heap size 설정
-Xmx : 최대 Heap size 설정
-Xss : 각 Thread에 할당되는 Stack size 설정
-Xmn : New 영역을 위한 Heap size 설정

2. -XX Option (올바른 동작을 위해 특정한 시스템 요구사항들이 있으며, 시스템 설정 파라미터에 대한 접근 권한이 요구됨)
-XX:PermSize : 초기 Permanent size 설정
-XX:MaxPermSize : 최대 Permanent size 설정

[링크 : https://webprogrammer.tistory.com/1430]

[링크 : https://spring.io/blog/2015/12/10/spring-boot-memory-performance]

 

+

일단은 -Xmx로 설정해주는게 영향을 주긴 한 듯..

Posted by 구차니
Programming/Java(Spring)2019. 7. 6. 19:50

이거 먼가.. 심각하게 심각해 보이는데..

아무튼 heap 메모리를 좀 넉넉하게 잡아주면 될거 같으면서도 애매하네?

 

java -Xmx1024m com.yourcompany.YourClass

[링크 : https://helloino.tistory.com/97]

[링크 : https://www.baeldung.com/java-gc-overhead-limit-exceeded]

 

If starting the app with the spring-boot plugin:

mvn spring-boot:run -Drun.jvmArguments="-Xmx512m" -Drun.profiles=dev
Otherwise if running java -jar:

java -Xmx512m -Dspring.profiles.active=dev -jar app.jar

[링크 : https://stackoverflow.com/questions/23072187]

'Programming > Java(Spring)' 카테고리의 다른 글

jsoup html body 사이즈 제한  (0) 2019.09.26
java 메모리 관련...2?  (0) 2019.07.06
mvn -P profile  (0) 2019.06.08
tomcat9 on ubuntu18.04  (0) 2019.06.07
tomcat 자동 war 배포 막기  (0) 2019.06.07
Posted by 구차니