힙은 남았는데 서비스가 멈췄다
한국 채용 공고의 38% 가 Java 를 요구하지만(2026-09 집계, 한국 6사 108건) 공고가 뜻하는 것은 문법이 아니라 운영입니다. 힙은 남았는데 서비스가 멈추는 두 가지 사건 — GC 정지와 스레드 대기 — 를 직접 만들고, GC 로그·jstat·jcmd·스레드 덤프·힙 덤프로 원인을 짚습니다. Tomcat 의 스레드 풀과 DB 커넥션 풀에 대기 상한을 넣어 실제 인스턴스로 띄우고, OutOfMemoryError 에서 덤프를 남기고 프로세스를 확실히 끝내는 기동 옵션을 스크립트로 못 박습니다. Java 서비스를 운영하거나 곧 운영할 사람, tomcat-nginx 코스를 마친 사람을 위한 과정입니다.
중급 · 레슨 12 · 실습 4
커리큘럼
GC 로그를 읽는다
- GC 정지는 힙 사용량 그래프에 없다 reading
- GC 로그를 읽는다 lab
- 퀴즈: 힙과 GC 로그 quiz
스레드 덤프로 멈춘 이유를 찾는다
- 힙은 남았는데 서비스가 멈췄다 reading
- 스레드 덤프로 멈춘 이유를 찾는다 lab
- 퀴즈: 스레드 덤프 읽기 quiz
풀이 마르면 서비스가 선다
- 서비스는 가장 작은 풀에서 멈춘다 reading
- 풀이 마르면 서비스가 선다 lab
- 퀴즈: 풀과 타임아웃 quiz
힙 덤프에서 범인을 찾는다
- OutOfMemoryError 는 프로세스를 죽이지 않는다 reading
- 힙 덤프에서 범인을 찾는다 lab
- 퀴즈: 힙 덤프와 재발 방지 quiz