RabbitMQ - 多个消费者如何使用来自单个队列的相同消息?
RabbitMQ - How multiple consumers can consume same message from single queue?
大多数 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);
}
}
这是不可能的;它只是行不通。每个消费者都需要自己的队列;使用扇出交换。
大多数 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);
}
}
这是不可能的;它只是行不通。每个消费者都需要自己的队列;使用扇出交换。