반응형
안녕하세요.
오늘은 intelliJ에서 vmOption 및 JavaProject 메모리 설정 방법에대하여 알아보겠습니다.
1. intelliJ의 vmOption에서의 메모리 설정
1_1. Help - Edit Custom VM Option... 을 선택해줍니다.
1_2. idea64.exe.vmoptions에서 아래와 같이 작성해줍니다.
- Xms / - Xmx
-Xms와 -Xmx 설정은 JVM(Java Virtual Machine)에 할당할 초기 힙 메모리(-Xms)와 최대 힙 메모리(-Xmx) 크기를 지정합니다.
-XX:+UseG1GC
- **G1GC (Garbage-First Garbage Collector)**를 활성화합니다.
- G1GC는 Java 9 이후 기본 가비지 컬렉터로 채택되었으며, 대규모 힙 메모리를 다룰 때 효율적입니다.
- G1GC의 주요 특징:
- Region-Based Heap Management: 힙 메모리를 작은 "Region" 단위로 나누어 관리합니다.
- Concurrent (병렬) 처리: 애플리케이션 스레드와 동시에 동작해 GC로 인한 정지를 줄입니다.
- Pause Time Goal: 사용자 정의 목표(예: MaxGCPauseMillis)에 따라 동작하며, 긴 정지 시간을 피합니다.
- Garbage-First: GC는 가장 많은 가비지를 포함한 영역부터 우선적으로 정리하여 성능을 최적화합니다.
G1GC는 특히 큰 힙 메모리(예: 4GB 이상)를 사용하는 애플리케이션에서 효과적입니다.
-XX:MaxGCPauseMillis=200
- 가비지 컬렉션의 **목표 정지 시간(Pause Time Goal)**을 설정합니다.
- 이 옵션은 GC가 한 번 실행될 때 200밀리초(ms) 이하로 애플리케이션이 멈추도록 노력하도록 지시합니다.
- 정지 시간은 GC가 메모리를 정리하기 위해 애플리케이션 실행을 중단하는 시간입니다.
- G1GC는 이 목표를 달성하기 위해 GC 작업을 병렬화하거나, 작업 범위를 조정합니다.
- 그러나, 설정된 정지 시간 목표를 반드시 보장하지는 않습니다. 힙 메모리가 매우 크거나, 가비지 생성 속도가 빠른 경우 목표를 초과할 수 있습니다.
2. JavaProject의 메모리 설정
2_1 - JDK 경로 설정
2_1_1. File - Project Stucture... 을 선택해줍니다.
2_1_2. SDK - PC에 설치된 JDK를 선택해줍니다.
2_2 - 프로젝트 설정
2_2_1. intellij 우상단에 Current File - Edit Configurations...을 선택해줍니다.
2_2_2. '+'를 누른후 Maven 및 Gradle를 선택해줍니다. [ 예시는 Maven ]
2_2_3. Name을 작성하고 하단에 Java Options의 Modify -> Add VM options를 선택합니다.
2_2_4. VM options란에 아래와 같이 설정할 메모리를 작성한후 'OK'를 선택합니다.
여기까지 intelliJ에서 vmOption 및 JavaProject 메모리 설정에 대하여 알아보았습니다.
감사합니다.
반응형
'programming language > Java' 카테고리의 다른 글
Java _ 장시간 걸리는 Excel 생성시 비동기처리 (0) | 2024.12.02 |
---|---|
Java _ Async를 이용한 비동기 처리방법 (0) | 2024.12.01 |
Java _ 데이터를 엑셀 파일로 만들기 (2) | 2024.11.19 |
Java_ 엑셀 파일 시트별로 병합하기 (2) | 2024.11.18 |
보안) FileUtils를 이용한 업로드 확장자를 제한하는 방법 (0) | 2024.07.23 |