RabbitMQ实现分布式事务

原理

采用最终一致性原理

也就是说过程中可能会产生不一致,但是最终会保持一致

要素

RabbitMQ解决分布式事务需要保证以下三要素

  • 一、确认生产者一定要将数据发送到 MQ服务器
  • 采用 MQ 消息确认机制
  • 二、MQ消费者消息能够正确消费消息
    • 采用手动 ACK 模式,同时也要注意重试幂等性问题
  • 三、保证第一个事务先执行
    • 采用补偿机制,创建一个消费者进行监听第一个事务,如果第一个事务没有执行成功,进行补偿