RabbitMQ的点对点模式的
生产者无事务代码:
rabbitTemplate.convertAndSend(ipExchange, ipRouteKey, str+":"+port);
WireShark抓包截图:
生产者加事务:
rabbitTemplate.setChannelTransacted(true); rabbitTemplate.convertAndSend(ipExchange, ipRouteKey, str+":"+port);
WireShark抓包截图:
多了事务确认过程
消费者故意抛出异常:
@RabbitHandler @RabbitListener(queues = "mq",containerFactory="rabbitListenerContainerFactory") public void receiveMessage(String msg) { System.out.println("接收到消息:" + msg); throw new RuntimeException("1"); }
WireShark抓包截图:
一直未消费
控制台查看: