java.lang.OutOfMemoryError: Java heap space

 

DflQueryManager.onFault(): (mx.rpc::Fault)#0
  content = null
  errorId = 0
  faultCode = "Server.Processing"
  faultDetail = (null)
  faultString = "java.lang.OutOfMemoryError : Java heap space"
  message = "faultCode:Server.Processing faultString:'java.lang.OutOfMemoryError : Java heap space' faultDetail:'null'"
  name = "Error"
  rootCause (Object)#1
    cause = (null)
    localizedMessage = "Java heap space"
    message = "Java heap space"

프로그램에서 서버 쿼리를 실행중에 위와 같은 에러가 발생하였다면 자신의 톰캣 서버 메모리를 의심해보아야 한다.

 

그리고 문제 해결 방법은 아래와 같다.

 

1. Eclipse의 서버탭

이클립스 서버탭의 해당 톰캣 서버를 더블클릭한다.

 

(이미지 설명 : 이 글에서는 Started 된 서버를 더블클릭 한다)

 

2. Server Overview

(이미지 설명 : 톰캣 서버를 더블클릭하면 보이는 서버 오버뷰)

 

여기에서 파랑색으로 삐뚤삐둘 밑줄 쳐진, Open launch configuration 링크를 클릭한다.

 

3. Arguments

(이미지 설명 : 사실 톰캣 서버는 여기에서 선택 가능하다)

 

선택한 서버가 실행중이라면 저러한 붉은 표시로 Server already running 이란 메시지를 띄우게 된다. 

해당 톰캣 서버를 멈추고, 밑줄쳐진 Arguments로 이동하자.

 

4. 설정 추가

 

붉은 밑줄 부분이 아마도 추가가 안되어있을텐데, 현 시스템 상황에 고려하여 메모리 항목을 추가해주면 된다.

필자는 아래와 같은 형식으로 추가를 하였다.

 

 -XX:MaxPermSize=128m -Xms128m -Xms512m

 

그리고 적용시키면 방금 전 에러는 빠이염!

여러분, 즐프하십셔~

 

 

블로그 이미지

김생선

세상의 모든것을 어장관리

,