자바 톰캣 이슈

자바 톰캣 메모리 이슈


톰켓이 잘 돌다가 갑자기 죽었다. 에러 로그를 살펴보니

java.lang.OutOfMemoryError: PermGen space tomcat 6

어플리케이션이 많이 실행되면 메모리 누수가 발생할 수 있단다.
일단 힙 메모리를 늘려주면 좀 더 오래 산단다.

1
2
# vi /usr/local/tomcat/bin/catalina.sh
JAVA_OPTS="-Djava.awt.headless=true -Dfile.encoding=UTF-8 -server -Xms1536m -Xmx1536m -XX:NewSize=512m -XX:MaxNewSize=512m -XX:PermSize=512m -XX:MaxPermSize=1024m -XX:+DisableExplicitGC"

메모리 누수 방지를 위해 추가

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# vi /usr/local/tomcat/conf/web.xml
<servlet>
<servlet-name>jsp</servlet-name>
<servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
<init-param>
<param-name>fork</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>xpoweredBy</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>enablePooling</param-name>
<param-value>false</param-value>
</init-param>
<load-on-startup>3</load-on-startup>
</servlet>
Share