[JEUS] java.lang.OutOfMemoryError : GC overhead limit exceeded 오류

es.Seong·2024년 2월 8일
0

업무 중 JEUS WAS가 종료되거나, 사용량이 많은 특정 시간대에 포털 속도가 급저하되는 문제가 발생했다.

JeusServer Log를 확인해보니 두 종류의 에러가 확인되었다.

java.lang.OutOfMemoryError : GC overhead limit exceeded
java.io.ioexception broken pipe

두 에러의 공통적인 원인을 파악하니 주된 원인은 포털의 잦은 입출력으로 메모리가 감당하지 못했다는 것이다.
JEUS 서버의 Heap Memory를 증가 시키는 방법을 사용했다.

조치 내용

JEUS 설정 파일인 domain.xml 내에 사용 중인 서버 설정 내에 다음과 같은 태그가 있을 것이다.

<jvm-config>
  <jvm-option> -Xms0000m -Xmx0000m  </jvm-option>
  ....
</jvm-config>  

해당 태그 내에는 GC에 대한 설정이 되어 있을 것이다.
원하는 메모리 용량을 입력 후 xml 파일을 저장 후 JEUS 재기동해주면 변경 내용이 반영된다.

webadmin에서 반영되었는지 확인하는 방법은 좌측 Monitoring - System Info - 서버명 -JEUS Memory Information 부분을 확인하면 변경된 Heap Memory를 확인할 수 있다.

이 방법은 완벽한 해결 방법은 아닐 것이다. 소스코드 어디에선가 메모리 누수(memory leak)가 있을 가능성이 있기 때문에 해당 방법은 임시조치라고 할 수 있다.

profile
Graduate student at Pusan National University, majoring in Artificial Intelligence

0개의 댓글