And Brain said,
Spring Cloud Bus, MSA의 승강장 본문
반응형
오늘은 Spring Cloud의 Bus에 대해 알아보도록 하자.
MSA는 다들 잘 알다시피 여러 개의 마이크로서비스가 각각 독립적으로 동작하고 서로 통신하여 기능을 제공하는데 이때, 마이크로서비스들 간에 변경 사항이 발생할 경우, 이를 다른 서비스들에게 전파해야 한다.
이를 위해 Spring Boot 애플리케이션에서 사용되는 버스 구현체가 Spring Cloud Bus다.
Spring Cloud Bus는 AMQP(Advanced Message Queuing Protocol) 기반의 브로커 기반 메시징 시스템으로, RabbitMQ나 Apache Kafka를 이용하여 구현한다.
메시지 브로커에 대한 더 자세한 내용은 아래 포스팅을 참조
https://theworldaswillandidea.tistory.com/121
Spring Cloud Bus의 동작 방식은
- Bus 서버가 먼저 RabbitMQ나 Kafka와 같은 메시지 브로커에 연결
- 클라이언트 애플리케이션에서 메시지를 전송하면, Bus 클라이언트가 다시 같은 메시지 브로커에 연결
- Bus 서버와 Bus 클라이언트가 모두 같은 메시지 브로커를 통해 연결되면, 클라이언트는 메시지를 같은 메시지 브로커에 전송.
- 메시지 브로커를 통해 전송된 메시지는 Bus 서버에 의해 다시 클라이언트 애플리케이션으로 전달.
Spring Cloud Bus는 위와 같은 과정을 통해, 애플리케이션 간의 통신을 표준화하고 단순화한다.
MSA 내에서는 꽤나 중요한 역할을 담당하므로 잘 기억해두자.
조만간 올릴 Config Server 포스팅에서 Spring Cloud Bus와 RabbitMQ를 이용한 실제 구현 예시를 보여드릴 것이다.
Thanks for watching, Have a nice day.
References
반응형
'IT > Java & Kotlin & Spring boot' 카테고리의 다른 글
QueryDSL, JPA ORM의 최종장 (0) | 2023.03.28 |
---|---|
Config Server, MSA의 중앙정보국 (1) | 2023.03.13 |
Spring boot Profile, 천의 얼굴을 가진 프로젝트 (0) | 2023.03.07 |
Kotlin, The Evolution of Java (+ MSA with Spring boot) (0) | 2023.02.19 |
직렬화(Serialization), 데이터의 연속된 기호화 (2) | 2023.02.12 |
Comments