728x90
Tomcat 사용할때 JVM 설정
✔ Tomcat 을 사용하다 보면 오류가 발생할수도있고 메모리가 많이 필요할수도있다
[대표적인 오류]
Java.lang.OutOfMemoryError: Java heap Space Heap size error
Java.lang.OutOfMemoryError: Permgen space PermGen space error
✔ 메모리 할당 방법
- tomcat 설치 폴더/bin/catalina.sh 파일에서 자바 옵션을 추가하여 톰캣 메모리 할당 옵션을 지정할수있다.
JAVA_OPTS="$JAVA_OPTS -Xms512m -Xms512m -XX:MaxPermSize=128m"
아래 설정의 변경으로 사이즈를 원하는대로 설정해 줄 수 있다.
- CATALINA_OPTS: start, run, debug 명령어 구동 시 사용되는 자바 런타임 옵션에 해당한다.
- 톰캣 자체에서만 사용되는 옵션들만 포함되며 중지 프로세스,버전 명령등으로는 사용해서는 안 됩니다.
- -Xms: 최소 java heap size 최초 JVM이 로드될 때 부여되는 메모리이다(start size)
- -Xmx: 최대 java heap size 최대 JVM이 가질 수 있는 메모리이다.(maximum size)
- -XX:MaxNewSize=: Young Generation의 최대 size
- MaxPermSize : permenant의 size
vi catalina.sh
실행후
JAVA_OPTS="-Djava.awt.headless=true -Dfile.encoding=UTF-8 -server -Xms256M -Xmx2048M -XX:NewSize=512m -XX:MaxNewSize=512m -XX:PermSize=512M -XX:MaxPermSize=512M -XX:+DisableExplicitGC"
추가한다.
✔ 메모리 할당 확인
ps -ef | grep java
* 설정한 옵션이 들어가있음을 확인할수있다.
그외 jmap 등으로 메모리가 제대로 활당되어있는지 확인이 가능하다.
https://mylovejs2.tistory.com/95
JVM 메모리 사용현황_ jmap
Server 에서 jmap을 이용하여 Jvm 확인하기. ✔ 조회 하고자 하는 프로세스 검색ps -ef | grep tomcat 조회하고자 하는 프로세스 번호를 확인한다. ✔ jmap -heep [프로세스번호]jmap -heap 2456 [조회결과]Ma
mylovejs2.tistory.com
728x90
'Web & Server > Tomcat' 카테고리의 다른 글
Centos 기준 Tomcat 자동실행하기. (1) | 2024.10.16 |
---|