Technical NOTE

Tomcat 9 설치 #4 - JVM 옵션 설정 본문

미들웨어/Tomcat

Tomcat 9 설치 #4 - JVM 옵션 설정

테크니컬노트 2024. 9. 12. 09:21
반응형
- 작성일 : 2024.09.12

 

Tomcat 을 설치했으면 제일 먼저 JVM 옵션을 설정해야 한다.

JVM을 모니터링하고 튜닝하기 위한 최소한의 표준화된 옵션 작업이므로,

싸이트 상황에 맞게 튜닝해서 사용하기를 권장한다.

 

먼저 gclog와 heapdump가 생성될 디렉토리를 생성하는 작업을 먼저 수행한다.

$ mkdir /logs/tomcat/gclog
$ mkdir /logs/tomcat/dump

 

그러면,

catalina.sh 파일을 열어서 JAVA_OPTS 파라미터에 생성하는 작업을 해주겠다.

설정 파라미터 값은 편의를 위해 TOMCAT_JVM 이라는 이름을 생성해서 추가해주겠다.

$ cd ${TOMCAT_HOME}/bin
$ vi catalina.sh

<< 아래 줄을 찾아, 그 아래에 추가해준다 >>
JAVA_OPTS="$JAVA_OPTS $JSSE_OPTS"

#--- tomcat jvm start -----------------------------
TOMCAT_JVM="-server -DTomcat9"
TOMCAT_JVM ="${ TOMCAT_JVM } -Djvmid=${HOSTNAME}_${LOGNAME}"
TOMCAT_JVM ="${ TOMCAT_JVM } -Xms2048m -Xmx2048m"
TOMCAT_JVM ="${ TOMCAT_JVM } -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=512m"
# TOMCAT_JVM ="${ TOMCAT_JVM } -XX:+UseG1GC"
TOMCAT_JVM ="${ TOMCAT_JVM } -verbose:gc"
TOMCAT_JVM ="${ TOMCAT_JVM } -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintGCDateStamps -XX:+PrintHeapAtGC"
TOMCAT_JVM ="${ TOMCAT_JVM } -Xloggc:/logs/tomcat/gclog/tomcat_gc.log"
TOMCAT_JVM ="${ TOMCAT_JVM } -XX:+HeapDumpOnOutOfMemoryError"
TOMCAT_JVM ="${ TOMCAT_JVM } -XX:HeapDumpPath=/logs/tomcat/dump/"
TOMCAT_JVM ="${ TOMCAT_JVM } -Djava.security.egd=file:/dev/./urandom"
TOMCAT_JVM ="${ TOMCAT_JVM } -Djava.awt.headless=true"
JAVA_OPTS="$JAVA_OPTS $ TOMCAT_JVM "
#--- tomcat jvm end -------------------------------

 

※ 참고로, 힙메모리 4G 이상 설정할 경우 G1GC를 선택적으로 사용한다. (위 설정에서 주석 삭제)
-------------------------------------------------
-XX:+UseG1GC
-------------------------------------------------

 

 

반응형