首先,我声明交换,排队并将它们绑定在一起。我基本将消息发布到此队列,因此队列中有您一条消息。这时我启动我的使用者程序(使用autoAck = true)并调试它,当我运行到basicConsume(xxx)时,消息丢失了!在我看来,消费者在运行方法nextDelivery()时,会将basic.ack发送给代理,但是实际上,当我声明消费者时,将使用队列中的消息。为什么?有人可以告诉我Rabbitmq从队列中删除邮件吗?在basicConsume()或nextDelivery()方法之后???谢谢~~~
autoAck = true
因为这
您告诉RabbitMQ在使用该消息时自动确认该消息。确认消息告诉RabbitMQ它已被处理,RabbitMQ现在可以删除它。
如果要在处理完消息后手动确认消息,请将autoAck设置为false。
| 归档时间: |
|
| 查看次数: |
5326 次 |
| 最近记录: |