分布式事务的解决

64 阅读1分钟

Seata框架(XA,AT,TCC),MQ

image.png

image.png

image.png

image.png

可靠消息最终一致性方案

可靠消息最终一致性方案是指当事务发起方执行完成本地事务后并发出一条消息,事务参与方(消息消费者)一定能够接收消息并处理事务成功,这个方案强调的是只要消息发给事务参与方最终事务要达成一致

本地事务与消息发送的原子性问题:事务发起方在本地事务执行成功后消息必须发出去,否则就会丢失消息,本地事务和消息发送的原子性,要么都成功,要么都失败

事务参与方接收消息的可靠性

本地消息表方案(处理事务发起方业务并把需要发送消息的信息记录到本地消息表,开启定时任务扫描本地消息表发送消息,消费方消费成功之后给mq一个ack确认)

Rocketmq事务消息方案

image.png