Linux 에서 Tomcat Startup 시 Java Xms 에 대해.
2012.03.09 03:19
컨텍스트가 많아서인지 Xms 가 700MB 는 되야 Startup 되지...그 이하면 메모릴 딸린댑니다...-_-; 괴물 자식~
그래서 대체 Heap 에는 뭐가 올라가나 조사해봐도...구체적인 내용을 찾을 수가 없네요.
대체 뭘 줄여야 저 700MB 나 되는 메모리를 줄일 수 있을까요?
안쓰는 소스를 정리해야 하나...Class Data 는 다른 메모리 영역에 올라가는 것 아닌가...?
Heap 에는 Instance 가 올라가는 거라고 하는데...Tomcat Startup 시에 대체 무슨 Instance 가 700MB 나 먹는지...
어떻게 하면 줄일 수 있을까욤~
컨텍스트에 어떤 내용이 올라가있는지 모르는 상태라... 답을 적기가...
게다가 톰캣은 안써서...
JDK 랑 톰캣 버젼 바꾼 테스트 서버에서 테스트 해보심이..
JDK쪽이 의심 스럽기는 합니다.
java를 실행할 때, Heap 영역이 부족하다고 나올 때가 있다. 고럴 때, 아래 옵션들을 이용해서 변경해 줄 수 있다.
-Xms : 초기의 힙 크기
-Xmx : 최대 힙 크기
-Xmn : young generation을 위한 힙 크기라는데..뭔지 모르겠다.
덤으로, Stack 사이즈는
-Xss : 쓰레드별 스택 크기
JVM options : http://blogs.sun.com/watt/resource/jvm-options-list.html
또한, 얼마나 사용하고 있는지 등을 모디터링 하기 위해 아래의 프로그램들을 이용할 수 있다.
자바 프로그램이 사용하고 있는 메모리의 양이나, 클래스의 개수 등등의 정보를 보려면
jconsole을 이용하면 볼 수 있다.
또한, jps를 이용하면 돌아가고 있는 자바 프로세스들과 프로세스 아이디를 볼 수 있고,
jstack 이용하면 스택을 추적할 수 있다.