아카이브사이트맵
© 2026 Rayon. All rights reserved.
DevDay
아티클랭킹스페이스채용
넷마블 favicon넷마블

자바 애플리케이션, CDS와 Layered Jar로 초기 구동 시간 30% 단축!

by DD
2024-02-20
2년 전
조회수 7

자바 애플리케이션의 초기 구동 시간 문제를 해결하기 위해 CDS(Class Data Sharing) 기술을 소개함

OpenJDK 12부터 지원되는 CDS를 Spring Boot 3.2 환경에서 적용하는 방법 제시

Layered Jar를 활용하여 초기 실행 시간을 30% 단축하고, 도커 이미지 크기를 줄임

CDS: JVM 시작 시간 단축의 핵심

CDS(Class Data Sharing)는 JVM 시작 시 클래스 로딩 정보를 공유하여 초기 실행 시간을 줄이는 기술이다. OpenJDK 12부터 지원되며, Spring Boot 3.2에서 쉽게 적용 가능하다. 따라서, 애플리케이션 시작 시 클래스 로딩 오버헤드를 줄여 전반적인 성능을 향상시킨다.

Layered Jar: 도커 이미지 최적화

Layered Jar는 애플리케이션을 레이어 형태로 구성하여 도커 이미지 크기를 줄이는 기술이다. 라이브러리와 사용자 코드를 분리하여, 변경 사항 발생 시 이미지 빌드 시간을 단축한다. 결과적으로, 에서 빠른 배포와 자원 효율성을 확보한다.

오토스케일링 환경

CDS와 Layered Jar의 시너지 효과

CDS와 Layered Jar를 함께 사용하면 초기 실행 시간 단축과 이미지 크기 감소라는 두 가지 이점을 얻을 수 있다. Mybatis와 같은 프레임워크에서 GraalVM Native Image 적용이 어려운 경우, CDS와 Layered Jar는 훌륭한 대안이 된다. 따라서, 자바 애플리케이션 성능 개선을 위한 효과적인 전략을 제공한다.

실행 시간 효율을 위한 클래스 데이터 공유(CDS)와 Layered Jar
중급
아키텍처
Java
Spring Boot
Docker
Backend
DevOps
원문 읽기
원문 읽기

댓글 0

첫 번째 댓글을 남겨보세요!

관련 추천 글

NAT 환경 SSH 서버 접근, PortBuddy로 쉽게 해결!

레딧 로고

20년 레거시를 혁신한 토스페이먼츠의 기술 여정

토스 로고

2025년 프리랜서 개발자, 어떤 기술을 배워야 돈을 벌까?

요즘IT 로고

JVM 힙 외 네이티브 메모리 누수, Docker OOM의 진실

여기어때 로고

Docker JVM 메모리 누수, 힙 말고 네이티브를 봐야 하는 이유

여기어때 로고

Docker 면접, 이 질문에 답하면 합격!

벨로그 로고
넷마블 favicon넷마블
중급
아키텍처
Java
Spring Boot
Docker
Backend
DevOps

관련 추천 글

NAT 환경 SSH 서버 접근, PortBuddy로 쉽게 해결!

레딧 로고

20년 레거시를 혁신한 토스페이먼츠의 기술 여정

토스 로고

2025년 프리랜서 개발자, 어떤 기술을 배워야 돈을 벌까?

요즘IT 로고