Java, Netty 기반 서비스에서 발생한 쓰레드 누수 이슈를 밑바닥에 있는 로그에서 시작해서 진짜 원인을 찾아서 해결한 귀납적 과정을 기록하며 객관화해 보았습니다.
부제 : 무작정 코드를 수정하면 잘못간 궤적을 그대로 두고 길을 돌아오는 코드를 만들 수 있습니다. 요구사항을 분명히 하면 올바른 목표로 곧장 가는 새길을 만들 수 있습니다.
AWS EC2 인스턴스 (1G 메모리) 에 올린 통신 서버(Netty 기반)에서 java.lang.OutOfMemoryError 예외가 발생합니다.
위성과의 교신을 위해 지상국 시스템을 초기화 하는 과정에서 모뎀 장비에서 응답 신호가 수신되지 않아 전체 교신 프로세스가 실패하는 문제가 발생하였습니다.
SDLC 메시지 프레임이 수신되었을 때, 수신 이벤트에 대한 인터럽트 서비스 루틴이 호출되지 않는 문제를 디버깅한 경험을 기록합니다.
대부분의 개발자들이 원하지 않는 파일이 삭제되어 패닉 상태에 빠진 경험 한 두번쯤 있을 것이다. 오늘은 그와 반대로 삭제하려는 파일이 삭제되지 않아 고생했던 나의 경험을 나누어 보려고 한다. 이직한 회사에서 퇴사한 여러 사람들이 개발해 놓은, 소스 파일 하나가....