4.3. 지점 간 메시징에 대한 주소 구성
점대점 메시징은 생산자가 보낸 메시지에는 하나의 소비자만 있는 일반적인 시나리오입니다. AMQP 및 JMS 메시지 생산자와 소비자는 예를 들어 점대점 메시징 대기열을 사용할 수 있습니다. 주소와 연결된 큐가 지점 간 방식으로 메시지를 수신하도록 브로커 구성에서 지정된 주소
요소에 대한 anycast
라우팅 유형을 정의합니다.
anycast
를 사용하여 주소에서 메시지를 수신하면 브로커는 주소와 연결된 큐를 찾고 메시지를 라우팅합니다. 그러면 소비자가 해당 대기열의 메시지를 사용하도록 요청할 수 있습니다. 여러 소비자가 동일한 큐에 연결하면 소비자가 동일하게 처리할 수 있는 메시지가 소비자 간에 배포됩니다.
다음 그림은 점대점 메시징의 예를 보여줍니다.
그림 4.1. point-to-point 메시징
4.3.1. 기본 지점 간 메시징 구성
다음 절차에서는 지점 간 메시징에 대해 단일 큐로 주소를 구성하는 방법을 보여줍니다.
프로세스
-
<
;broker_instance_dir> /etc/broker.xml
구성 파일을 엽니다. 주소의 선택한
.큐
요소 주위에anycast
구성 요소를 래핑합니다address
및queue
요소 모두에 대한name
속성 값이 동일한지 확인합니다. 예를 들면 다음과 같습니다.<configuration ...> <core ...> ... <address name="my.anycast.destination"> <anycast> <queue name="my.anycast.destination"/> </anycast> </address> </core> </configuration>
4.3.2. 여러 큐에 대한 지점 간 메시징 구성
anycast
라우팅 유형을 사용하는 주소에 두 개 이상의 큐를 정의할 수 있습니다. 브로커는 연결된 모든 큐에 대해 anycast
주소로 전송된 메시지를 균등하게 배포합니다. FQN( Fully Qualified Queue Name )을 지정하면 클라이언트를 특정 큐에 연결할 수 있습니다. 둘 이상의 소비자가 동일한 큐에 연결하면 브로커는 메시지를 소비자 간에 균등하게 배포합니다.
다음 그림은 두 개의 큐를 사용하는 점대점 메시징의 예를 보여줍니다.
그림 4.2. 두 개의 큐를 사용한 점대점 메시징
다음 절차에서는 여러 큐가 있는 주소에 대해 점대점 메시징을 구성하는 방법을 보여줍니다.
프로세스
-
<
;broker_instance_dir> /etc/broker.xml
구성 파일을 엽니다. address
요소의큐
요소 주위에anycast
구성 요소를 래핑합니다. 예를 들면 다음과 같습니다.<configuration ...> <core ...> ... <address name="my.anycast.destination"> <anycast> <queue name="q1"/> <queue name="q2"/> </anycast> </address> </core> </configuration>
클러스터의 여러 브로커에 대해 위에 미러링된 것과 같은 구성이 있는 경우 클러스터는 생산자 및 소비자에 불투명한 방식으로 지점 간 메시징을 로드 밸런싱할 수 있습니다. 정확한 동작은 클러스터에 대한 메시지 로드 밸런싱 정책이 구성된 방법에 따라 달라집니다.
추가 리소스
다음에 대한 자세한 내용은 다음을 수행합니다.
- 정규화된 큐 이름 지정은 4.9절. “정규화된 큐 이름 지정” 에서 참조하십시오.
- 브로커 클러스터에 대한 메시지 로드 밸런싱을 구성하는 방법은 14.1.1절. “브로커 클러스터의 메시지 부하를 분산하는 방법” 을 참조하십시오.