2016-09-20 4 views
1

저는 스프링 부트와 함께 activemq를 사용합니다. 특정 가입자에게만 주제를 보내고 싶었습니다. 이를 달성하기 위해 JMSListener에서 셀렉터를 지정할 수는 있지만 이미 구독자에게 메시지를 보냈다는 것을 의미합니다. 내가 원하는 것은 브로커 수준에서 메시지를 발송하는 것입니다. 는 현재 내가 코드 아래에 있습니다activemq는 특정 가입자에게 브로커 메시지를 보냅니다.

public Broker broker() throws Exception { 
    BrokerService broker = new BrokerService(); 
    broker.setBrokerName(BROKER_NAME); 
    broker.addConnector(BROKER_URL); 
    policy.setTopic(USER_TOPIC); 
    broker.start(); 
    return broker.getBroker(); 
} 

하자 내가이 개 주제 도서 및 식품을 보낼 수있는 메시지를 말한다. 가입자 A의 경우에만 서적 BOOKS 및 BOOK BOOKS 및 FOOD 가입자에게만 제공됩니다.

질문 : 브로커 수준에서 달성 할 수 있습니까? 그렇다면 어떻게. 나는 목적지 정책 같은 것이 있다는 것을 알고 있지만 나는 그것이

답변

0

메시지가 다양한 방법으로 라우팅 및 다른 주제 또는 대기열 대상에 확보 할 수 :(사용하는 방법을 알고하지 않습니다

  1. 별도 (주제 : // 이벤트) 메시지 헤더 "EVENT_TYPE = 'FOOD'또는 'EVENT_TYPE = 'BOOKS' "
  2. '도서'사용자가 주제 : // 도서를 구독 할 수 있도록 대상을 보호 할 수 있으며 '음식'사용자 만 구독 할 수 있습니다. 주제 : // FOOD
  3. 주제에 게시하고 대기열에 가입하고 위의 모든 항목을 최상으로 활용하는 가상 주제를 사용하십시오. 주제 : 예를 들어 게시 // 이벤트 다음에서 구독 : 큐 : //vConsumer.BOOKS.EVENTS, 큐 : //vConsumer.FOOD.EVENTS

링크 :

관련 문제