티스토리 뷰
Spring Cloud Conifg
Spring Cloud Config 는 설정 파일을 관리하는 서버를 통해 각 마이크로 서비스들이 외부에 설정 파일을 참조하여 사용할 수 있게 하는 것을 의미한다. 설정파일을 외부에서 관리하는 덕분에 추가 배포 없이 설정파일 변경을 동적으로 할 수 있다.
Spring Cloud Conifg 동작 방식
- Micro Service는 해당 인스턴스 생성 시점에 Config Server로 부터 설정파일을 조회해 사용한다.
- Config Server는 이러한 설정파일 저장소(Git Repository)에서 가져와 반환한다.
- 설정파일이 서비스 동작중 변경하게 되면 변경 내용 적용을 위해 각 Micro Service에 Refrest 요청을 전달한다.
Spring Cloud Config Server&Client 구현
Spring Config Server
1. Config Server Project 생성
Spring Cloud Config-Server 의존성을 포함한 프로젝트 생성
2. 설정파일 저장소 생성
3. Config-Server 설정 파일 (yml) 작성
위에서 생성한 설정파일 저장소인 Git Hub 저장소 위치를 YML 파일에 작성한 git uri 에 추가해 준다.
4. @EnableConfigServer 어노테이션을 통해 설정
Spring Cloud Client
Spring Cloud Client 로 User Micro Service를 등록
1. Client Service 생성
2. Cleint 설정 파일(YAML) 작성
Repository 로 부터 가져오기 위해 Config Server 위치를 application.yml 파일에 설정한다.
해당 내용은 Spring boot 2.4x 부터 유효하며 그 이전 버전이라면 bootstrap.yml 을 작성하는 방법으로 찾아 보세요.
User Service 라는 Micro Service의 설정파일을 Git Hub 저장소에 생성한다. 이름은 위 cloud.confg에 작성한 내용을 바탕으로 {config.name}-{config.profile}.yml 의 형태로 작성한다. ex. user-default.yml
3. Client 비즈니스 로직 작성
@RefeshScope 어노테이션이 추가된 스프링 빈의 경우 POST: /acturator/refresh 명령을 통해 변경된 설정파일이 적용되었을 때 해당 내용이 반영된다. 라이프 사이클이 싱글톤인 스프링 빈의 경우 애플리케이션 시작 단계에 생성되어 애플리케이션 종료 시점까지 존재하기 때문에 @RefeshScope 로 지정해주지 않으면 해당 내용이 반영되지 않는다.
4. 설정 파일 변경 후 해당 내용 반영
설정 파일을 변경한 이후 각 Micro Service에 POST: /acturator/refresh 요청을 통해 적용 할 수 있다.
'BackEnd > Spring' 카테고리의 다른 글
[Spring Cloud] API Gateway Pre&Post Filter 설정 (0) | 2022.09.06 |
---|---|
WebSocket으로 Echo서버 구현하기 with.Spring boot (0) | 2022.09.06 |
[Spring Cloud] OpenFeign 으로 마이크로서비스간 통신하기 (0) | 2022.08.31 |
Spring Cloud는 OOO이다. (0) | 2022.08.30 |
Spring Boot를 Jar로 패키징 하기 (0) | 2022.08.18 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Memory Fragmentation
- Sticky Session
- 육각형 아키텍처
- 수직 분할
- 뾰족함
- Session
- multimap
- pass by value
- 정적 타입 언어
- java
- 메모리 단편화
- 객체 풀
- pass by reference
- 동적 디스패치
- 클린 아키텍처
- 컴포짓 패턴
- Object Pool
- 동적 타입 언어
- 내부 단편화
- Clean Architecture
- 외부 단편화
- 세션 불일치
- 메모리 파편화
- RestAssured
- SpringBoot 2.2
- 수평 분할
- 장애 해결기
- ATDD
- OOP
- pool
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
글 보관함