티스토리 뷰
톰캣 사용 중 out of memory 오류가 발생했습니다.
기존 서블릿 컨테이너에 jenkins를 추가했더니 발생해서 구글링....
클래스가 로딩되면 Perm 공간에 저장되는데 deploy된 어플리케이션이 한번에 Perm 공간에 저장되지 않습니다.
jsp같은 경우엔 호출될 때 저장되기 때문에 일정시간이 지난 후에 오류가 발생하는 경우도 있다고 합니다.
MaxPermSize 옵션을 주지 않을 때 기본 메모리는 64M 입니다.
해결
메모리는 현재 상황에 맞추고 다음과 같이 설정한다.
1. catalina.sh에 설정
JAVA_OPTS="-XX:MaxPermSize=256m"
2. /etc/profile에 설정
export JAVA_OPTS="-XX:MaxPermSize=256m"
출처
http://www.mkyong.com/tomcat/tomcat-javalangoutofmemoryerror-permgen-space/
http://theeye.pe.kr/entry/톰캣의-메모리-확장
http://wiki.apache.org/tomcat/FAQ/Memory
http://www.javaservice.com/~java/bbs/read.cgi?b=jdk&c=r_p&n=1220952345
http://javarevisited.blogspot.kr/2012/01/tomcat-javalangoutofmemoryerror-permgen.html
자바 메모리
Java HotSpot VM Options
http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html
반응형
댓글