仅在生成消息的节点上接收 JMS 消息

Receive JMS messages only on node they in which they were produced

我正在使用 Spring 的 DefaultMessageListenerContainer 从 ActiveMQ 队列接收消息。此应用程序是此队列消息的唯一生产者。该应用程序是集群的,所以在我有两个实例(instance1instance2)的情况下,我如何确保消息侦听器接收到从 instance1 生成并发送到队列的消息在 instance1 上从 instance2 生成并发送到队列的消息在 instance2 上被消息侦听器接收?虽然我最初是设置 DefaultMessageListenerContainermessageSelector 属性,但我希望每个应用程序都具有相同的配置。

你不能那样做;您要么需要为每个实例创建一个单独的队列,要么使用消息选择器。