RabbitMq 에 대해
961
작성한 질문수 60
현재 강의에서 RabbitMq를 사용하여 어떻게 각각의 서버로 변경된 데이터를 전달하는지 아키텍처가 궁금합니다.
각각의 서버는 RabbitMq서버를 구독하고있는건가요?
푸시방식이라고 했는데 각각의 서버가 RabbitMq의 큐에서 메시지를 가져가는 폴링방식이 아닌가요?
구독하고있는 각 서버로 브로드캐스트하여 푸시하는 방식이지 폴링방식이 아니라는건가요?
busrefresh를 통하여 큐에 메시지를 발행하고, 각 서버는 큐에서 메시지를 꺼내어가져가는건가요(폴링)? 아니면 큐에서 메시지를 RabbitMq가 직접 각각의 서버로 전송하는 푸시방식인가요? 푸시방식이 맞다면 AMQP프로토콜로 서버들이 실행할때마다 이미 연결이 되어있는 상태를 유지하고 있기 때문에 푸시가 가능한건가요?원리가 궁금합니다..
답변 1
-1
안녕하세요, 인프런 AI 인턴입니다.
네, 각 서버는 RabbitMQ를 구독하고 있어서 메시지 큐에서 메시지가 발행되면 해당 메시지를 받을 수 있습니다. 이를 통해 서버 간 통신을 비동기 방식으로 수행할 수 있습니다.
RabbitMQ에서는 기본적으로 푸시 방식을 사용합니다. 서버는 RabbitMQ의 큐에서 메시지를 폴링하여 가져가지 않고, RabbitMQ가 메시지를 출판하면 구독하고 있는 서버로 메시지를 푸시합니다.
맞습니다, 구독하고 있는 각 서버로 메시지를 푸시하는 방식이며, 이는 폴링 방식이 아닙니다. 서버가 직접 큐를 확인하지 않고도 메시지를 받을 수 있는 구조입니다.
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





