이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 3645|회답: 0

RabbitMQ AMQP 메시지 아키텍처에 대한 상세 설명

[링크 복사]
게시됨 2022. 8. 14. 오후 11:32:43 | | | |
AMQP 프로토콜 소개

AMQP(Advanced Message Queuing Protocol)는 통합 메시징 서비스를 제공하는 애플리케이션 계층 표준 프로토콜로, 메시지 지향 미들웨어를 위해 설계된 애플리케이션 계층 프로토콜의 오픈 표준입니다. AMQP는 프로세스 간에 비동기 메시지를 전달하기 위한 네트워크 프로토콜입니다.

이 프로토콜을 기반으로 한 클라이언트와 메시지 미들웨어는 서로 다른 클라이언트/미들웨어 제품이나 개발 언어 등에 의해 제한받지 않고 메시지를 전달할 수 있습니다.

AMQP의 주요 특징은 메시지 지향, 대기열, 라우팅(피어 투 피어 및 게시/구독 포함), 신뢰성, 그리고 보안성입니다. AMQP는 메시지 제공자와 클라이언트의 동작을 강제하여 서로 다른 벤더 간 진정한 상호 운용성을 가능하게 합니다.

AMQP 프로토콜에 대한 상세 설명
https://www.itsvse.com/thread-10347-1-1.html

라우팅 메시지

AMQP 아키텍처에서 성공적인 메시지 라우팅은 세 부분으로 구성됩니다:

  • 교환: 제작자가 메시지를 게시하는 곳
  • 대기열: 소비자가 메시지를 받는 곳
  • 바인딩: 스위치에서 특정 큐로 메시지가 어떻게 라우팅되는지에 대한 정보


교환 및 제속

그렇다면 메시지는 어떻게 대기열에 도달할까요? 소비자에게 메시지를 전달하려면 먼저 교환기에게 보내야 합니다. 그 후 특정 규칙이나 라우팅 키를 바탕으로 RabbitMQ가 메시지를 전달할 큐를 결정합니다.

규칙 또는 라우팅 키는 대기열을 교환에 바인딩할 수 있게 해줍니다. RabbitMQ는 메시지 내 라우팅 키를 바인딩에 사용된 키와 맞추려고 시도합니다. 메시지는 팬아웃, 토픽, 다이렉트, 헤더 등 네 가지 교환 유형 중 하나에 따라 큐로 전달됩니다



팬아웃 교환

이 교환 방식은 수신한 모든 메시지를 자신과 연결된 모든 큐에 방송합니다. 게시된 메시지에 제공된 라우팅 키는 무시됩니다.

주제 교환

이 교환 방식에서는 라우팅 키를 기반으로 메시지가 큐로 전송됩니다. 즉, 주제 교환으로 전송되는 메시지는 특정 라우팅 키를 가져야 하며, 이는 포인트로 구분된 단어 목록이어야 합니다(예: 'acs.deviceoperations.'). 문구 제한은 255바이트입니다.

구속 키는 라우팅 키와 동일한 형식이어야 합니다. 따라서 특정 라우팅 키로 전송된 메시지는 일치하는 바인딩 키로 묶인 각 큐에 전달됩니다.

바인딩 키는 다음과 같은 표현식 규칙을 허용합니다:

*(별표)는 단 하나의 단어만 대체할 수 있습니다
#(해시)는 0개 이상의 단어를 대체할 수 있습니다
큐가 "#"(해시) 바인딩 키로 바인딩되면, Fanout 팬아웃 교환과 마찬가지로 라우팅 키와 상관없이 모든 메시지를 수신합니다.

직접 교환

큐가 선언되면큐 이름을 라우팅 키로 사용하는 스위치에 자동으로 바인딩하세요。 라우팅 키가 일치하면 메시지가 적절한 큐로 전달됩니다.

헤더 교환

헤더 스위치는 주제 스위치와 다소 유사하지만, 주제 스위치와 달리 라우팅은 경로 키를 기반으로 하며, 헤더 스위치의 라우팅 값은 메시지의 헤더 데이터를 기반으로 합니다.
주제 스위치 라우팅 키는 문자열일 뿐이며, 헤더 스위치는 정수와 해시일 수 있습니다.

(끝)





이전의:AMQP 프로토콜에 대한 상세 설명
다음:[돌기]. NET 성능 최적화 - 리스트 컬렉션을 빠르게 탐색
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com