1、1 Ack简介: 确认。 表示消费端收到消息后的确认方式。 有三种确认方式: 自动确认:acknowledge="none" 手动确认:acknowledge="manual" 根据异常情况确认:acknowledge="auto"
2、1 设置消费者的Ack为手动处理 listener: simple: acknowledge-mode: manual 2、2 监听类: @Component public class RmListener { @RabbitListener(queues = "springboot_topic_queue") public void TopicQueueListener(Message msg,Channel channel) throws Exception { long deliveryTag = msg.getMessageProperties().getDeliveryTag(); try { Thread.sleep(2000); // 1、接受转换的消息 System.out.println(new String(msg.getBody())); // 2、业务逻辑处理 // 手动异常 // int i = 3 / 0; System.out.println("业务逻辑处理中-------------"); // 3、手动签收 channel.basicAck(deliveryTag,true); } catch (Exception e) { // 4、接受失败策略 channel.basicNack(deliveryTag,true,true); } } }
项目代码链接:https://github.com/Mbm7280/rabbitmq_demo
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)