14 RabbitMQ解决分布式事务
2019-12-27 本文已影响0人
笑Skr人啊
1 原理
最终一致性原理
2 必要条件
确认生产者将信息投递到MQ服务器中(采用MQ确认机制)
生产者向MQ发送消息失败,采用重试机制
确认消费者能正确的消费消息,采用手动ACK模式(注意幂等性问题)
消费者消费消息失败,生产者无需回滚
生产者和消费者都成功,但是生产者后续步骤出现异常,数据库事务回滚
生产者同时投递到两个队列,第二个队列判断生产者数据是否插入数据库,未插入则执行数据库插入逻辑