代理中的activemq将消息分派给特定订阅者

代理中的activemq将消息分派给特定订阅者,activemq,messagebroker,Activemq,Messagebroker,我将activemq与spring引导一起使用。 我只想将主题发送给特定订阅者。我知道为了实现它,我可以在JMSListener上指定选择器,但这意味着我已经向订阅者发送了消息。我想做的是在代理级别发送消息。 目前我有以下代码: public Broker broker() throws Exception { BrokerService broker = new BrokerService(); broker.setBrokerName(BROKER_NAME); br

我将activemq与spring引导一起使用。 我只想将主题发送给特定订阅者。我知道为了实现它,我可以在JMSListener上指定选择器,但这意味着我已经向订阅者发送了消息。我想做的是在代理级别发送消息。 目前我有以下代码:

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,只有书籍可用;对于订户B,只有书籍和食物可用

问题:
是否有可能在经纪人层面实现这一目标?如果是的话,怎么办。我知道有类似于目的地策略的东西,但我不知道如何使用它:(

消息可以通过多种方式路由和保护到不同的主题或队列目的地:

  • 每个订阅者有单独的主题(topic://BOOKS, topic://FOOD)
  • 单个主题,但使用消息头(topic://EVENTS) a、 消息标题“事件类型='FOOD'”或“事件类型='BOOKS'”
  • 您可以保护目的地,以便只有“books”用户可以订阅topic://BOOKS 只有“食品”用户才能订阅topic://FOOD
  • 使用发布到主题的虚拟主题,订阅队列并充分利用上述所有功能。例如,发布到:topic://EVENTS 然后从以下网站订阅:queue://vConsumer.BOOKS.EVENTS, queue://vConsumer.FOOD.EVENTS
  • 链接:

    • ActiveMQ授权:
    • ActiveMQ虚拟主题:

    消息可以通过多种方式路由和保护到不同的主题或队列目的地:

  • 每个订阅者有单独的主题(topic://BOOKS, topic://FOOD)
  • 单个主题,但使用消息头(topic://EVENTS) a、 消息标题“事件类型='FOOD'”或“事件类型='BOOKS'”
  • 您可以保护目的地,以便只有“books”用户可以订阅topic://BOOKS 只有“食品”用户才能订阅topic://FOOD
  • 使用发布到主题的虚拟主题,订阅队列并充分利用上述所有功能。例如,发布到:topic://EVENTS 然后从以下网站订阅:queue://vConsumer.BOOKS.EVENTS, queue://vConsumer.FOOD.EVENTS
  • 链接:

    • ActiveMQ授权:
    • ActiveMQ虚拟主题: