java.lang.OutOfMemoryError: Java heap space

코드줍줍·2025년 9월 24일
0

삽질 일지

목록 보기
12/13
post-thumbnail

🐞 문제

DB 조회 제한을 두지 않은 상태에서 10,000,000건 이상 대량 조회가 여러 번 요청되었을 때 다음과 같은 에러 발생

java.lang.OutOfMemoryError: Java heap space

🔍 원인

  • JVM 기본 힙 크기(-Xms, -Xmx)가 부족한 상태에서 대용량 데이터를 한꺼번에 적재하려다 메모리 초과 발생.
  • 반복적으로 대량 데이터를 조회하면서 GC가 메모리를 해제하기 전에 새 객체가 계속 생성됨.

✅ 해결

  • JVM 옵션에서 힙 크기 조정
  • 불필요한 객체 참조 해제 및 스트리밍 처리(I/O)
  • 데이터 조회시 최대 건수 제한 설정

✨배운 점

  • DB 조회에 건수 제한을 두지 않으면 서비스 전체 안정성에 영향을 줄 수 있음.
  • 운영 전 부하테스트와 메모리 모니터링을 필수.
profile
Just Wanna Dev

0개의 댓글