핵심 요약
SK C&C의 WAS Troubleshooting 사례에서 Javax Activation Bug으로 인한 Hang 현상을 분석하고 OutOfMemoryError 및 DataHandler 쓰레드 누적 문제를 GC 로그, Heap 덤프, 쓰레드 덤프를 통해 확인했다. 구버전 1.1.0과 최신 1.4.5의 충돌을 확인한 뒤 PRE CLASSPATH로 1.4.5를 적용해 1대 서버(4 WAS)에서 메모리 누수와 Hang이 개선되었고, 미적용 3대 서버는 기존 현상이 유지됐다.
구현 방법
- GC 로그/Heap 덤프/쓰레드 덤프를 통해 OutOfMemoryError 원인과 RuntimeAccessImpl의 메모리 사용을 파악
- DataHandler 관련 다수 쓰레드가 zombie 상태로 누적된 현상과 javax.activation 버전 중복 사용을 확인
- PRE CLASSPATH로 1.4.5를 로드하도록 구성하고 1대 서버에서 시범 적용 후 모니터링
주요 결과
- 적용 서버에서 메모리 누수와 Hang이 개선되어 정상 운영 확인
- 미적용 3대 서버는 기존 장애 재현으로 재기동 필요


