RabbitMQ实现分布式事务详解

RabbitMQ实现分布式事务方案:

1.生产者一定要把消息发送到MQ服务器中

  • 生产者采用Confirm确认应答机制
  • 如果发送到MQ服务器失败,采用重试机制

2.消费者能够正常消费MQ的消息

  • 采用手动ack模式和重试机制,需要采用死信补偿机制,同时采用redis方式重复消费问题

3.采用补单机制

  • 在创建一个补单消费者进行监听,如果订单创建后,最后又发送异常事务回滚,就需要将订单进行补偿
  • 采用交换机路由健模式,补单和排单都采用相同的路由健

RabbitMQ实现分布式事务详解_第1张图片

在rabbitmq服务单建立交换机 和 Queues

order_exchange_name :交换机

order_create_queue :补单序列

order_dic_queue :排单序列

RabbitMQ实现分布式事务详解_第2张图片

 

对应代码如下:

https://gitee.com/jia_you_bing/rabbitMq

你可能感兴趣的:(RabbitMQ实现分布式事务详解)