Java笔记-spring-rabbitmq中使用@RabbitListener消费(手动确认,获header数据)
手动确认时:application.properties需要添加spring.rabbitmq.listener.simple.acknowledge-mode=manual确认ackchannel.basicAck(tag, false);拒收发回rabbitmqchannel.basicReject(tag, true);下面是整体代码@RabbitListener(queues = queu
·
手动确认时:
application.properties需要添加
spring.rabbitmq.listener.simple.acknowledge-mode=manual
确认ack
channel.basicAck(tag, false);
拒收发回rabbitmq
channel.basicReject(tag, true);
下面是整体代码
@RabbitListener(queues = queueName)
public void disposeSomething(@Header(AmqpHeaders.DELIVERY_TAG) long tag, @Header("key") String key, @Payload String msg, Channel channel){
System.out.println("-------------------------------------");
System.out.println(key);
System.out.println(msg);
try {
// channel.basicAck(tag, false);
channel.basicReject(tag, true);
} catch (IOException e) {
e.printStackTrace();
}
System.out.println("-------------------------------------");
}
如果这里不停的拒收,再放回队列中,就会出现这样的现象:

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐
所有评论(0)