문서의 이전 판입니다!
Java
Thread Dump Analyzer
ThreadLogic
https://github.com/sparameswaran/threadlogic
- 과거 오라클 사이트에 있었으나 개편되면서 사라지고, 아래 개발자가 github에 기존 코드를 이동
- 전체적인 UI나 기능이 깔끔하고 직관적임
- 쓰레드덤프 load 시간이 비교적 오래걸림
IBM TMDA (Thread and Monitor Dump Analyzer)
https://www.ibm.com/support/pages/ibm-thread-and-monitor-dump-analyzer-java-tmda
- IBM에서 만든 analyzer로 유명한 편임
- 전체적인 UI 깔끔하고 속도도 빠른편
- 개인적으로 UX 가 좀 복잡한거 같음
- 대략 어떤 원인인지는 확인이 되나 쓰레드 간의 lock, block, wait 상태를 직관적으로 보여주지 않아서 직접 찾아야함
jVisualVM (JDK)
- 쓰레드 덤프 제대로 못불러오는 이슈도 있고 전체적으로 느림
- heap dump analyze 할때는 (느리지만) 괜찮은듯함
irockel TDA
https://github.com/irockel/tda
- open source 라서 큰 기대를 안했는데 매우 추천
- UI는 투박하나 UX가 직관적임
- 특히 쓰레드간의 lock, block, waiting 상태를 직관적으로 보여줘서 직접 찾아다닐 필요가 없음
- 예를 들어, 특정 쓰레드가 어떤 monitor를 lock 하고 있고, 그 lock으로 인해 block, waiting 하는 쓰레드들을 모여서 보여줌
- 반대로, 어떤 쓰레드가 block, waiting 상태이면 어떤 lock과 monitor로 인해 해당 상태인지 연결해서 보여줌
WEB 으로 서비스되는 사이트
https://gceasy.io/
https://fastthread.io/
- UI가 기똥차고 analyze를 기똥차게 해줌
- 하지만, IBM TMDA 처럼 쓰레드 간의 연결고리를 찾는게 쉽지 않음
- 웹사이트에 파일을 upload 해야하기 때문에 찝찝함