2017-09-15 6 views
1

activemq의 청취자 코드가 여러 중개인의 메시지를 청취해야하는 솔루션을 찾는 데 어려움을 겪고 있습니다. 예를 들어 4 개의 브로커 (1,2,3,4)가 4 개의 서버 (A, B, C, D)에서 호스팅되는 소비자에게 메시지를 제공합니다. consumerA는 broker1,2,3 &의 응답 메시지를 청취해야합니다. 4. 메시지가 발견되면 consumerA는 메시지를 선택하여 처리해야합니다. 어떤 이유로 든 consumerA가 다운 된 경우 소비자 B는 4 명의 브로커 모두를 청취해야합니다.activemq에서 여러 중개인을 청취하는 방법

아래에서 장애 조치 전송을 구성한다고해도 위의 디자인을 달성하는 데 도움이되지 않습니다. 위의 URI 구성 내 리스너 코드와

activemq.broker.url=failover:(tcp://localhost:61716,tcp://localhost:61717,tcp://localhost:61718,tcp://localhost:61719)?randomize=false,timeout=5000,maxReconnectAttempts=3 

은 포트 61716에 중개 수신하고 메시지가 다른 브로커에 사용할 수있는 경우 포트 61717에 말의 선택과 그것을 처리 할 수 ​​없습니다. 어떤 도움이라도 대단히 감사하겠습니다.

P.S : 동시에 여러 중개인을 경청하는 한 소비자에 대한 예가 있습니까?

답변

0

하나의 소비자가 여러 중개인의 의견을 듣고 activemq의 솔루션을 찾지 못해서 특정 브로커 URL을 가리키는 여러 개의 빈을 만드는 솔루션을 구현했습니다. 그런 식으로 우리는 동일한 서버와 동일한 리스너 구성 파일에서 4 개의 URL을 가리키고 있습니다.