使用发布/订阅的RabbitMQ Java教程,我可以创建一个扇出交换机,并且任何连接的消费者都将接收到消息的副本。与动态/编程方式声明交换和绑定不同,我想在连接任何消费者之前创建交换和绑定。我通过RabbitMQ管理控制台完成了这个过程。然而,由于某种原因,我的消费者是以轮询的方式接收消息,而不是全部接收消息的副本。我错过了什么?以下是一些代码片段:
发布者:
channel.basicPublish("public", "", null, rowId.getBytes("UTF-8"));
消费者:
QueueingConsumer consumer = new QueueingConsumer(channel);
channel.basicConsume("myqueue", false, consumer);
在 RabbitMQ 管理控制台中,我创建了一个类型为“fanout”的交换机“public”,并将该交换机绑定到“myqueue”。
感谢任何帮助!