inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)

Spring Cloud Bus 테스트

RabbitMq 에 대해

961

플하

작성한 질문수 60

0

현재 강의에서 RabbitMq를 사용하여 어떻게 각각의 서버로 변경된 데이터를 전달하는지 아키텍처가 궁금합니다.

 

  1. 각각의 서버는 RabbitMq서버를 구독하고있는건가요?

  2. 푸시방식이라고 했는데 각각의 서버가 RabbitMq의 큐에서 메시지를 가져가는 폴링방식이 아닌가요?

  3. 구독하고있는 각 서버로 브로드캐스트하여 푸시하는 방식이지 폴링방식이 아니라는건가요?

  4. busrefresh를 통하여 큐에 메시지를 발행하고, 각 서버는 큐에서 메시지를 꺼내어가져가는건가요(폴링)? 아니면 큐에서 메시지를 RabbitMq가 직접 각각의 서버로 전송하는 푸시방식인가요? 푸시방식이 맞다면 AMQP프로토콜로 서버들이 실행할때마다 이미 연결이 되어있는 상태를 유지하고 있기 때문에 푸시가 가능한건가요?원리가 궁금합니다..

spring-boot jpa 아키텍처 spring-cloud kafka msa rabbitmq

답변 1

-1

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.

  1. 네, 각 서버는 RabbitMQ를 구독하고 있어서 메시지 큐에서 메시지가 발행되면 해당 메시지를 받을 수 있습니다. 이를 통해 서버 간 통신을 비동기 방식으로 수행할 수 있습니다.

  2. RabbitMQ에서는 기본적으로 푸시 방식을 사용합니다. 서버는 RabbitMQ의 큐에서 메시지를 폴링하여 가져가지 않고, RabbitMQ가 메시지를 출판하면 구독하고 있는 서버로 메시지를 푸시합니다.

  3. 맞습니다, 구독하고 있는 각 서버로 메시지를 푸시하는 방식이며, 이는 폴링 방식이 아닙니다. 서버가 직접 큐를 확인하지 않고도 메시지를 받을 수 있는 구조입니다.

  4. busrefresh 이벤트를 사용하여 메시지를 큐에 발행하면, 해당 이벤트를 구독하고 있는 서버들이 메시지를 가져가는 방식은 푸시 방식입니다. RabbitMQ는 AMQP 프로토콜을 활용하여 서버들과 연결을 유지하며, 이 연결을 통해 필요한 메시지가 서버로 푸시됩니다. 서버가 실행될 때 RabbitMQ와의 연결이 수립되고, 이 연결을 통해서 메시지가 전송되는 원리입니다.

추가로 궁금하신 사항이 있으시면, Spring Boot와 RabbitMQ에 관한 공식 문서를 참고하시는 것도 좋습니다. 보다 자세한 내용은 아래의 원본 URL에서 확인하실 수 있습니다.
- AMQP에 대한 자세한 설명: Spring Boot Reference Documentation: 10.2. AMQP
- 메시징과 관련된 추가 정보: Spring Boot Reference Documentation: 3.7. Messaging

kafka 업데이트 강의 듣고 시포요

0

85

1

강의 교안

0

73

1

마이크로서비스간 통신 시, 인증 처리

0

79

1

api gateway 에서 인증 처리

0

65

1

섹션 19 질문드립니다

0

53

1

강의 자료 업데이트

0

82

1

부하분산 강의 섹션

0

57

1

강의자료는 어디에서?

0

71

1

강의 자료는 어디서 다운 받을 수 있나요?

0

110

1

전체 사용자 조회시 오류

0

58

1

혹시 pk 외 별도의 id 를 부여한 이유가 있을까요 ??

0

110

2

학습 방향

0

95

2

카프카 커넥터 사용 목적 문의

0

85

2

kafka 강의

0

108

2

서비스 디스커버리 종류

0

87

2

강의 자료에 대해서 궁금해요

0

116

2

GlobalFilter, LoggingFilter가 동작하지 않습니다.

0

90

2

Kafka Source Connect 버전 에러

0

85

2

소스커넥터는 사용안한 거 맞죠?

0

81

2

강의자료 업데이트 문의

0

95

2

강의에서 BCryptPasswordEncoder 에 역할(5-2)

0

56

1

강의 업데이트 계획이 궁금합니다.

0

112

2

MSA 애플리케이션에 Spring Web과 Spring Data JPA를 사용하는 것이 바람직한지 궁금합니다. (MSA 설계와 관련된 질문입니다)

0

161

2

어떤 것이 업데이트 된 건가요?

0

164

2