본문 바로가기

WAS/WebLogic

[weblogic] IBM JAVA - Large Object Area 사이즈 튜닝

Oracle JAVA에서는
Young영역과 Old 영역의 Memory 사이즈 조정을 통한
세밀한 튜닝이 가능하지만

IBM JAVA 는
Young영역과 Old 영역으로 나뉘어져 있지 않고
기본적으로 One Heap 구조이다.





Oracle JAVA에서는
-XX:NewSize=1024m -XX:MaxNewSize=1024m 등과 같이
Young영역 Memory 사이즈 조정이 가능하다

 

-XX:NewSize 와 -XX:MaxNewSize 값이 동일하지 않거나 설정되어 있지 않음 
New 영역 크기가 동적으로 증가할 경우 Memory 영역 재분배, Object 객체 이동 등의 내부 작업으로 인한 성능 저하 및 장애가 발생할 수 있음 
-XX:NewSize 와 -XX:MaxNewSize 설정 및 동일한 값으로 설정

 

전체 Heap Memory size의 1/4 정도가 적절

https://fitcloud.github.io/jvm/




IBM JAVA 에서는
Large Object Area 사이즈 조정이 필요하다.

-Xloainitial0.15 -Xloaminimum0.15 -Xloamaximum0.3

현재 고객사 WebLogic 상황을 고려하였을 시
최소 사이즈는 전체 Heap Size의 15%
최대 사이즈는 전체 Heap Size의 30% 로 세팅하면 적당할 듯

현재 Heap Memory 4GB로 운영 중인데,
Large Object Size를 최소 1GB 이상으로 올려야 하는 상황.
따라서 Heap Memory Size 또한 6GB로 올리는 것이 맞을 것으로 생각함.
현재 세팅으로도 GC에 시간이 과도하게 소모되지 않는 편.




Heap Memory 6GB 기준
전체 Heap Size의 15% = 921.6
전체 Heap Size의 30% = 1843.2