沈阳网站建设开发维护,个人网站 网站教程,重庆网站建设公司费用,电销系统哪家好事务#xff1a;RabbitMQ是基于AMQP协议实现的, 该协议实现了事务机制, 因此RabbitMQ也⽀持事务机制. SpringAMQP也提供了对事务相关的操作. RabbitMQ事务允许开发者确保消息的发送和接收是原⼦性的, 要么全部成功, 要么全部失败
配置事务管理器#xff1a;
Bean
public Ra…事务RabbitMQ是基于AMQP协议实现的, 该协议实现了事务机制, 因此RabbitMQ也⽀持事务机制. SpringAMQP也提供了对事务相关的操作. RabbitMQ事务允许开发者确保消息的发送和接收是原⼦性的, 要么全部成功, 要么全部失败
配置事务管理器
Bean
public RabbitTemplate rabbitTemplate(CachingConnectionFactory
connectionFactory){
RabbitTemplate rabbitTemplate new RabbitTemplate(connectionFactory);
rabbitTemplate.setChannelTransacted(true);
return rabbitTemplate;
}
注
1. 不加 Transactional , 会发现消息1发送成功 2. 添加 Transactional , 消息1和消息2全部发送失败
Transactional
RequestMapping(/send)
public String send(){
rabbitTemplate.convertAndSend(,trans_queue, trans test 1...);
int a 5/0;
rabbitTemplate.convertAndSend(,trans_queue, trans test 2...);
return 发送成功;
}