Web service

gcDaemonProtection false 설정

'김용환' 2011. 11. 17. 16:26

 

TomcatJreMemoryLeakPreventionListener gcDaemonProtection true값이 디폴트이다. Tomcat GC Daemon을 하나 만들어서 sun.misc.GC.requestLatency(long) 메소드를 호출하게 된다. JreMemoryLeakPreventionListener 소스에서는 1시간단위로 해당 메소드를 호출하도록 되어 있다.

따라서, server.xml에 아래 내용을 추가하여 Full GC가 일어나지 않도록 수정되어야 한다.

<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener"

gcDaemonProtection="false"/>

Tomcat 5에서는 아래 내용이 적용되지 않으며, Tomcat 6이상에서만 적용된다.

http://tomcat.apache.org/tomcat-6.0-doc/config/listeners.html