Spring Cloud Bus 적용하기
- Coding/Spring
- 2021. 6. 11.
반응형
728x90
반응형
현재 프로젝트 목록
- Prj1. Config
-> 여러 Service 프로젝트들의 Config를 공통으로 관리하는 프로젝트
- Prj2. API-Gateway
-> 여러 Service 프로젝트들의 Gateway 역할을 하는 프로젝트
- Prj3. User-Service
-> User, Order, OrderItem 등 여러 서비스 프로젝트들 중에 유저 프로젝트
User-Service 프로젝트
우선 서비스 프로젝트들 중 하나인 User-Service 프로젝트에 추가 설정을 해보자.
- 1) pom.xml
<!-- bus -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-cloud-starter-bus-amqp</artifactId>
</dependency>
- 2) application.yml
spring:
application:
name: user-service
rabbitmq:
host: 127.0.0.1
port: 5672
username: guest
password: guest
rabbitmq 내용을 추가하였다.
APIGateway 프로젝트
위 User-Service 프로젝트와 동일하게 설정을 추가한다.
- 1) pom.xml
<!-- bus -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-cloud-starter-bus-amqp</artifactId>
</dependency>
- 2) application.yml
spring:
application:
name: apigateway-service
rabbitmq:
host: 127.0.0.1
port: 5672
username: guest
password: guest
rabbitmq 내용을 추가하였다.
Config 프로젝트
- 1) pom.xml
<!-- bus -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-cloud-starter-bus-amqp</artifactId>
</dependency>
- 2) application.yml
spring:
application:
name: config
rabbitmq:
host: 127.0.0.1
port: 5672
username: guest
password: guest
management:
endpoints:
web:
exposure:
include: refresh, bursefresh
rabbitmq 내용을 추가하였다. 그리고 추가로 actuator 설정도 추가했다.
이로써, Config 설정을 변경하였을때 적용하고자 하는 모든 프로젝트의 /refresh 를 호출해줄 필요 없이 /bursefresh 을 한번만 호출해준다면 연결되어있는 모든 프로젝트에 적용이 될 것이다.
rabbitmq 가 config 설정이 변경되었다는 이벤트를 받게되면, 이에 연결되어있는 모든 프로젝트들에 push가 된다.
반응형
'Coding > Spring' 카테고리의 다른 글
SpringBoot 프로젝트 + Postgresql 연동 및 Mac Postgresql 설치 과정 (0) | 2022.01.16 |
---|---|
스프링 부트 @SpringBootApplication (0) | 2021.07.08 |
SpringBoot + Microservice 프로젝트에서 Spring Cloud Config 적용하기 (0) | 2021.06.10 |
Spring 에서 Entity -> Dto 로 변환하는 ModelMapper 사용 (0) | 2021.06.07 |
CommonException 으로 @Valid 어노테이션 BindingException, MethodArgumentNotValidException 처리하기 (0) | 2021.02.18 |