4.5. 지점 간 메시징과 게시-구독 메시지의 주소 구성
점대점 및 게시-구독(publish-to-Subscribe) 의미론을 모두 사용하여 주소를 구성할 수도 있습니다.
일반적으로 포인트 대 포인트 및 게시 구독 의미 체계를 모두 사용하는 주소를 구성하는 것은 권장되지 않습니다. 그러나 예를 들어 orders
라는 JMS 대기열과 orders
라는 JMS 주제를 원하는 경우 유용할 수 있습니다. 서로 다른 라우팅 유형을 통해 클라이언트 연결에 대해 주소가 고유하게 표시됩니다. 이 경우 JMS 대기열 프로듀서가 보낸 메시지는 anycast
라우팅 유형을 사용합니다. JMS 주제 생산자가 보낸 메시지는 멀티 캐스트
라우팅 유형을 사용합니다. JMS 주제 소비자가 브로커에 연결하면 자체 서브스크립션 큐에 연결됩니다. 그러나 JMS 큐 소비자는 anycast
큐에 연결됩니다.
다음 그림은 함께 사용되는 포인트-투-포인트 및 게시-구독 메시지의 예를 보여줍니다.
다음 절차에서는 지점 간 메시지와 게시-구독 메시지의 주소를 구성하는 방법을 보여줍니다.
이 시나리오의 동작은 사용 중인 프로토콜에 따라 다릅니다. JMS의 경우 주제와 대기열 생산자와 소비자 사이에 명확한 차이점이 있으므로 논리를 쉽게 만들 수 있습니다. AMQP와 같은 다른 프로토콜에서는 이러한 구분을 수행하지 않습니다. AMQP를 통해 전송되는 메시지는 anycast
및 multicast
및 Consumer에 의해 기본적으로 anycast
로 라우팅됩니다. 자세한 내용은 3장. 네트워크 연결에서 메시징 프로토콜 구성의 내용을 참조하십시오.
절차
-
<
;broker_instance_dir> /etc/broker.xml
구성 파일을 엽니다. address
요소의큐
요소에 대해anycast
구성 요소를 래핑합니다. 예를 들면 다음과 같습니다.<configuration ...> <core ...> ... <address name="orders"> <anycast> <queue name="orders"/> </anycast> </address> </core> </configuration>
주소에 빈
멀티 캐스트
구성 요소를 추가합니다.<configuration ...> <core ...> ... <address name="orders"> <anycast> <queue name="orders"/> </anycast> <multicast/> </address> </core> </configuration>
참고일반적으로 브로커는 필요에 따라 서브스크립션 큐를 생성하므로
multicast
요소 내부에 특정 큐 요소를 나열할 필요가 없습니다.