← 질문 목록
#268깊이 0

GC 알고리즘 선택 기준은 무엇인가?

언어 · 런타임심화메모리

애플리케이션의 서비스 특성과 지연 시간 허용 범위에 따라 결정한다. 처리량 중심인지, 응답 속도 중심인지가 핵심이다.

기준Parallel GCG1 GCZGC
목표처리량 최대화균형 잡힌 지연초저지연
특징STW 길다리전 분할 관리색상 포인터 사용

Parallel GC는 전체 처리량을 높이는 데 유리하다. 다만 GC가 돌면 그 JVM의 애플리케이션 스레드가 멈춘다. 그 시간이 길면 응답이 끊긴 것처럼 보인다.

G1 GC는 을 리전으로 나누고 회수 가치가 큰 곳부터 수집한다. 설정한 목표 지연 시간을 맞추기 위해 수집 효율이 높은 영역부터 먼저 처리한다.

ZGC는 힙이 커져도 멈추는 시간이 잘 늘지 않도록 만들어졌다. 다만 몇 밀리초 아래라는 것은 목표이지 어떤 환경에서든 지켜지는 약속은 아니다. 컬러 포인터와 로드 배리어로 애플리케이션과 동시에 GC를 수행한다.

추천 꼬리질문

0/300

적은 내용은 AI 학습에 쓰일 수 있습니다. 이름이나 연락처는 넣지 말아 주세요.

관련 질문

GC 알고리즘 선택 기준은 무엇인가?