RabbitMQ 系列之:消息确认机制(Confirm)

    Confirm 的另一个优点是它所处理的逻辑是异步的,生产者在发送一条消息之后可以进行异步监听通过回调来处理该消息,同时还可继续发送下一条,如果 RabbitMQ 因为系统内部错误导致消息丢失,回调会收到一条 nack 消息,用来处理失败的逻辑,否则会收到一条 ack 成功的消息。

    一个 channel 使用确认模式 “confirmation mode”,可参考官方文章 http://www.squaremobius.net/amqp.node/channel_api.html#confirmchannel

    1. 通过 connect.createConfirmChannel() 获取一个确认模式的 channel

    代码实现

    主要变动生产者代码部分

    Java 版实现

    实现步骤

    1. 开启确认模式 channel.confirmSelect()

    代码实现

    源码地址