大多数 RabbitMQ 文档似乎都集中在循环法上,即单个消息由单个消费者使用。我有一个要求,希望从单个队列接收相同的消息给多个订阅的消费者。
下面是我的示例消费者代码。这里有 2 个监听器在收听同一个队列,但只有一个消费者收到消息。我如何配置它以便将相同的消息传递给两个消费者? (消费者 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);
}
}
最佳答案
这是不可能的;它只是行不通。每个消费者都需要自己的队列;使用扇出交换。
关于spring - RabbitMQ - 多个消费者如何使用来自单个队列的相同消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53297531/