TDA(ThreadDump analiyzer) 를 이용한 스레드덤프 분석

순서

  1. 쓰레드 덤프를 5~7초 간격으로 3~5회 정도 추출한다.
    jstack 또는 kill -3 명령을 이용

  2. TDA(ThreadDump analyzer)를 실행한다.

  3. 파일 – 열기 선택 후 스레드 덤프 파일을 선택한다.

  4. 분석 시작


주의사항

쓰레드 덤프를 간격을 두고 여러번 추출하는 이유는 여러번 추출하는 동안 같은 부분에 BLOCK이 되어 있다면 로직 처리 시간이 15초가 넘어가는 경우기 때문에 병목 현상을 예상할 수 있습니다.


위의 이미지를 보면 덤프가 출력된 시간을 볼 수 있습니다. 약 7초간격으로 반복적으로 쓰레드 덤프를 출력 했습니다.

위의 상황을 Oracle JDBC에서 대기 상태로 남는 문제가 발생되는 것을 확인할 수 있습니다. 링크된 부분을 클릭하면 LOCK 된 객체때문에 대기중인 스레드 정보도 확인할 수 있습니다.



답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

%s에 연결하는 중