我正在使用java客户端
https://www.rabbitmq.com/tutorials/tutorial-six-java.html
。我的设置是RPC。我的服务器正在创建队列,客户端也在创建相同的队列并发送…
听起来好像发生了以下情况:
现在,您想知道为什么消费者1没有收到任何消息?您必须重新订阅您的消费者。我通常不会删除队列,因为在任何合理的情况下都不需要这样做(相反,使用 queue.expires 处理队列自动删除的属性)。
根据 AMQP 0-9-1规范 ,
删除队列时,任何挂起的消息都将发送到死信 如果在服务器配置中定义了此队列,则为队列 队列中的消费者被取消。
因此,根据行为的描述,这是消费者的错误。在这种情况下,它应抛出异常或以其他方式退出使用循环。无论如何,在您收到更多邮件之前,您必须重新订阅A'。