java.lang.OutOfMemoryError: heap space
Linux 터미널
1) 톰캣의 메모리 값을 확인
[root@XXXXXXX conf]# ps -ef | grep tomcat
2) tomcat이 사용중인 PID 확인
root 1403 1 0 09:49 ? 00:01:20 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.292.b10-0.el8_3.x86_6
...
org.apache.catalina.startup.Bootstrap start
3) JVM의 HEAP 영역 정보 확인
- jmap은 JVM을 모니터링 할 수 있는 도구
[root@XXXXXXX conf]# sudo jmap -heap 1403
Attaching to process ID 1403, please wait...
Debugger attached successfully.
Server compiler detected.
JVM version is 25.292-b10
using thread-local object allocation.
Mark Sweep Compact GC
Heap Configuration:
MinHeapFreeRatio = 40
MaxHeapFreeRatio = 70
MaxHeapSize = 213909504 (204.0MB)
NewSize = 4849664 (4.625MB)
MaxNewSize = 71303168 (68.0MB)
OldSize = 9830400 (9.375MB)
NewRatio = 2
SurvivorRatio = 8
MetaspaceSize = 21807104 (20.796875MB)
CompressedClassSpaceSize = 1073741824 (1024.0MB)
MaxMetaspaceSize = 17592186044415 MB
G1HeapRegionSize = 0 (0.0MB)
Heap Usage:
New Generation (Eden + 1 Survivor Space):
capacity = 42663936 (40.6875MB)
used = 7838808 (7.475669860839844MB)
free = 34825128 (33.211830139160156MB)
18.373382146457374% used
Eden Space:
capacity = 37945344 (36.1875MB)
used = 3120216 (2.9756698608398438MB)
free = 34825128 (33.211830139160156MB)
8.222921895239637% used
From Space:
capacity = 4718592 (4.5MB)
used = 4718592 (4.5MB)
free = 0 (0.0MB)
100.0% used
To Space:
capacity = 4718592 (4.5MB)
used = 0 (0.0MB)
free = 4718592 (4.5MB)
0.0% used
tenured generation:
capacity = 94625792 (90.2421875MB)
used = 63503288 (60.56145477294922MB)
free = 31122504 (29.68073272705078MB)
67.10991438782357% used
4) 메모리 1GB 기준
\bin\catalina.sh
최상단에 추가
JAVA_OPTS="$JAVA_OPTS -Xms512m -Xmx512m -XX:MaxPermSize=512m"
저장
5) 톰캣 껏다 켜기
cd 톰캣설치경로/bin
./shutdown.sh
./startup.sh
'Java > Spring' 카테고리의 다른 글
@Transactional 적용 안된 현상 정리 (0) | 2022.04.09 |
---|---|
Controller parameter 받는 방법 (0) | 2022.04.09 |
ERROR - Parameter index out of range ... (0) | 2021.07.07 |
ERROR - Ambiguous mapping found. Cannot map ~~ (0) | 2021.07.05 |
java: cannot access javax.inject.Provider class file for javax.inject.Provider not found (0) | 2021.05.03 |