Spring Cloud Config로 설정 변경, 이제 배포 없이!

by DD
7개월 전
조회수 4

Spring Cloud Config Server 도입으로 설정 변경 시 전체 서비스 재시작 문제를 해결

Git 기반 설정 관리Bus-Refresh를 활용하여 실시간 설정 변경 시스템 구축

배포 시간 20분 → 1분으로 단축, 운영 안정성 확보 및 표준 아키텍처 템플릿 적용

Spring Cloud Config 아키텍처 심층 분석

Spring Cloud Config Server는 Git과 같은 중앙 저장소에서 설정 파일을 관리한다. 구체적으로, Git Repository에 설정 변경 사항이 Push되면, Bus-Refresh가 이를 감지하여 각 서비스에 변경 사항을 전파한다. 따라서, 실시간 설정 변경이 가능해진다.

AWS Parameter Store vs Spring Cloud Config

Spring Cloud Config는 Git 기반 설정 관리를 통해 버전 관리 및 롤백 기능을 제공한다. 반면, AWS Parameter Store는 서버리스 환경에서 쉬운 접근을 제공하지만, 설정 계층 표현에 제한이 있다. 따라서, 프로젝트의 요구사항에 따라 적합한 솔루션을 선택해야 한다.

실전 적용 가이드: @RefreshScope 활용

@RefreshScope 어노테이션을 사용하여 빈(Bean)을 새로고침함으로써 설정 변경을 적용한다. 구체적으로, @Value 어노테이션으로 주입된 설정값을 실시간으로 업데이트한다. 따라서, API 설정값이나 DB Endpoint와 같은 외부 주입 값에 효과적으로 적용할 수 있다.

Spring Cloud Config & Bus-Refresh 도입기