[JBoss] 자바 메모리 누수

KKK·2023년 1월 18일
0

Linux

목록 보기
3/3

JBoss를 사용중인 서버에서 메모리 이슈로 인한 장애로 서버가 죽었을 때 해결했던 과정

exception is java.lang.OutOfMemoryError: Java heap space

OOM이 발생한걸 확인하고 해당 부분에 문제가 발생하지 않게 조치했던 과정 정리


보통 OOM은 heap size 부족으로 발생한다.

  1. App에서 요구하는 메모리가 was에 할당된 메모리보다 클 경우

  2. Memory leak

  3. 특정 작업으로 대량의 메모리 사용


위같은 경우에 발생할 수 있는데 OOM이 발생하면 메모리 정리를 위해 GC를 하게 되고 이때 was는 모든 작업을 정지한다.

GC가 자주 발생하여 cpu 사용량이 증가하면 was에 접근하지 못하는 장애가 발생할 수 있음

이 때 WAS의 Java Heap Memory 사이즈를 기존보다 증설히야 해결할 수 있다.


대부분의 WAS는 env.sh 파일이 있는데 해당 파일에서 heap memory size를 변경할 수 있음

export JAVA_OPTS="$JAVA_OPTS -Xms4096m -Xmx4096m -XX:MetaspaceSize=1024m"

변경 후 재기동

0개의 댓글