您的位置:首页 > 编程语言 > Java开发

springboot + rabbitmq 消费者消息确认 (Ack)

2019-01-31 14:49 525 查看

springboot + rabbitmq 消费者消息确认 (Ack)

开启消息确认

spring.rabbitmq.listener.direct.acknowledge-mode=manual
spring.rabbitmq.listener.simple.acknowledge-mode=manual

消费者

@Component
public class RabbitMqComponent7 {

@RabbitListener(queues = "queueAck")
public void listerQueueR1(Channel channel,String message,@Header(AmqpHeaders.DELIVERY_TAG) long tag) throws IOException {

System.out.print(message);
channel.basicAck(tag,false);
}
}

channel.basicAck(deliveryTag, false);

deliveryTag:该消息的index
multiple:是否批量.true:将一次性ack所有小于deliveryTag的消息。

channel.basicNack(deliveryTag, false, true);

deliveryTag:该消息的index
multiple:是否批量.true:将一次性拒绝所有小于deliveryTag的消息。
requeue:被拒绝的是否重新入队列

channel.basicReject(deliveryTag:, false);

deliveryTag:该消息的index
requeue:被拒绝的是否重新入队列

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: