VisualVM이란 JVM을 실시간으로 모니터링 할수 있는 툴입니다.

heap덤프 및 쓰레드덤프도 할 수 있습니다.


저는 주로 메모리관련 이슈가 발생할때 이툴로 heap덤프떠 메모리 분석을 할때 사용합니다.


이미지를 많이 넣었기때문에 글 읽는 것 보다는 이미지만 봐도 대충 될것 같습니다. ^^;


그럼 어떤건지 한번 보겠습니다.

먼저 다운로드는 아래의 URL에서....

http://visualvm.java.net/download.html


1.png


다운 받았으면......압축 해제......

압축 해제한 폴더를 저는 D:\밑에 복사 했습니다.

그리고 실행은 D:\visualvm_137\bin\visualvm.exe로 실행 시키면 아래와 같은 화면이 뜹니다.

3.png


위화면이 뜨면 플러그인 두개를 설치해야 하는데.....

설치는 메뉴에서 Tools>plugins를 선택합니다.

창이 뜨면 Available Plugins라는 탭을 선택하고...

아래에 체크되어있는 것을 체크합니다. 그리고 Install버튼 클릭.........

  - VisualVM-MBeans

  - Visual GC

4.png



Next버튼 클릭..........

5.png



I accept .....체크후 Install버튼 클릭.........

6.png



Finishi클릭하면 설치 완료......

7.png



Installed탭을 열어 보면 설치가 되있다고 나옵니다. ^^

8.png


위창을 닫고....... 자바로된 프로그램을 실행시켜야 하는데...

저는 톰캣을 실행 시켜봤습니다.

톰캣을 실행시키니 아래와 같이 Logcal밑에 톰캣이 뜨네요....

Overview의 사용 옵션이라던가 Java버전 시스템 프로퍼티 정보를 볼수가 있네요.

9.png




Monitor탭을 열어보면 한눈에 CPU, Memory, Classes, Threads를 볼수 있습니다.

10.png



Threads탭에는 지금 Thread의 상태를 확인 할 수 가 있습니다.

11.png




Sampler탭에서는 CUP, Memory의 샘플링을 할수 있습니다.12.png



Profiler탭 에서는 CPU, Memory 프로파일링을 할 수 있습니다.

13.png



MBeans탭 에서는 MBean에 내용을 확인 할 수 있습니다.

14.png



Visual GC탭 메모리의 상태를 볼 수 있습니다.

15.png


VisualVM은 JDK가 설치되어야지만 실행 됩니다. jre만 설치돼 있으면 실행이 되질 않습니다.


그리고..........충격적인 사실.........

JDK1.7 에서는 기본으로 들어 있다는 사실.......뚜둥!!!....OTL


JDK1.7가 설치 되어 있다면 설치를 안해도 됩니다. ^^;


감사합니다.