大多数RabbitMQ文档似乎都集中在循环上,即单个消息由单个使用者使用。我有一个要求,希望从单个队列接收相同的消息给多个订阅的使用者。
以下是我的样本消费者代码。这里有2个侦听器正在侦听相同的Queue,但是该消息仅被其中一个使用者接收。如何配置它,以便将相同的消息传递给两个使用者? (消费者1和消费者2)。 任何帮助将不胜感激。
@Component
public class Consumer1 {
@RabbitListener(queues="test.queue.jsa")
public void recievedMessage(Employee msg) {
System.out.println("Recieved Message: " + msg);
}
}
@Component
public class Consumer2 {
@RabbitListener(queues="test.queue.jsa")
public void recievedMessage(Employee msg) {
System.out.println("Consumed Message: " + msg);
}
}
答案 0 :(得分:2)
这是不可能的;只是那样行不通。每个使用者都需要自己的队列。使用扇出交换。