336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
먼저 tomcat의 heap 변경을 위해서는 JVM 구조를 알아야 하고 기본적인 New, Old Generation 과 같은 개념을 알아야 한다. 블로그에 JVM에 대한 포스팅이 있으니 먼저 확인하고 읽길 바란다.
아래명령어로 자바 또는 톰캣의 프로세스 ID를 가져와야 한다.
1 2 | ps -ef | grep java ps -aux | grep tomcat |
프로세스 아이디를 아래와 같이 입력하면 JVM 상태를 알 수 있다.
1 | jmap -heap [pid] |
만약 Old Generation의 사용량이 지속적으로 증가한다면 memory leak을 의심해봐야 한다.
New Generation, Old Generation으 비율은 기본 1:2이다. New, Old 비율은 업무 특성을 고려하여 적절하게 변경해야한다. 가급적 Old Generation으로 이동을 최소화하는 것이 좋기 때문에 New를 늘리는 방안을 생각할 수 있지만 그렇게 되면 역으로 Old의 부족으로
아래 명령어로 클래스별 객체 수와 메모리 사용량을 확인할 수 있다.
1 | jmap -histo:live [pid] | more |
주기적으로 클래스별 객체 수와 메모리의 사용량을 체크하는지 알 수 있다. 하지만 어디에서 누스를 일으키는지는 jmap 만으로는 알 수 없고, heap dump를 떠서 분석해야 한다.
'IT이것저것' 카테고리의 다른 글
.gitignore를 사용하여 깔끔하게 git Commit 해보기 (0) | 2019.04.15 |
---|---|
Mac에서 Oracle JDK 삭제하기 (0) | 2019.04.10 |
REST API란 무엇일까? (0) | 2018.09.20 |
robots.txt 소개와 작성법을 알아보자 (0) | 2018.09.05 |
크롬 개발자도구 Network 사용법 (0) | 2018.06.28 |