美文网首页
分布式事务解决方案(MQ)

分布式事务解决方案(MQ)

作者: 独步_fe43 | 来源:发表于2019-10-02 15:02 被阅读0次

分布式系统的定义:一个用户的请求,由多个系统协同处理

思路:最终一致性 BASE理论(非实时一致性)

一.分布式事务的几种解决方案

1.基于数据库的XA/JTA协议的方式 --需要数据库厂商支持

2.异步校验数据的方式    --支付宝、微信等主动查询订单的状态、对账单的形式

3.基于可靠消息 (MQ)的解决方案 --异步场景、通用性强、扩展性强

4.TCC编程式解决方案--阿里等自己封装的DTX

二.消息队列中间件(MQ)

本质:存储数据,独立运行(类似java LinkedBolckQueue)

没有sql语句、强制结构化数据、强制事务 --功能简单,没数据库那么复杂 --性能比数据库高很多

mq如何可靠:

1.如何确保消息一定发送到Mq 

1).mq有消息发送确认机制--发送者可以收到确认回执(ack)

2).保存发送mq消息的数据表,保存状态-- 收到回执,修改状态

3).定时检查消息表是否发送--未发送则重发

2.确保消息被正确消费

1).消息消费确认机制--给mq发送回执(ack)

2).未发送回执,mq会继续推送该消息

3).程序无法预知异常,需要手动干预(监控监控、短信、微信进行预警、手动干预)

相关文章

  • 分布式事务

    1、分布式事务 目前分布式事务的解决方案有 AT、TCC、Saga、MQ、XA、BED 六种。 1.1 两阶段提交...

  • 什么是事务、半事务消息?怎么实现的?

    事务消息就是MQ提供的类似XA的分布式事务能⼒,通过事务消息可以达到分布式事务的最终⼀致性。半事务消息就是MQ收到...

  • 大厂面试系列(九):MQ和分布式事务

    MQ和分布式事务 MQ 项目中RabbitMQ实现了at least once,包括mq反馈provider,消息...

  • 分布式事务Saga介绍

    目前常见的分布式事务解决方案有:2pc、3pc、tcc、本地消息表、mq事务、Saga等,其方案对比如下图(从数据...

  • 分布式事务的解决方案

    本文从以下几个方面介绍分布式事务的解决方案: 为什么会有分布式事务分布式事务经典模型分布式事务解决方案 为什么会有...

  • RockMq事务消息原理

    场景: 通过mq 进行分布式事务的一致性控制,参考转账事务原理 目的: 保持本地事务和mq发送的原子性 过程: ...

  • 分布式事务(MQ解决方案)

    A服务里面如果只调了1个服务B,就不需要考虑事务,A服务里面如果调用了两个或者两个以上的服务B、C等就要考虑事务。...

  • 分布式事务解决方案(MQ)

    分布式系统的定义:一个用户的请求,由多个系统协同处理 思路:最终一致性 BASE理论(非实时一致性) 一.分布式事...

  • 分布式事务

    目录 分布式事务解决方案 长事务: saga 短事务: 设计的时候尽量短事务,能不用分布式事务尽量不用,分布式事务...

  • 高并发&高可用系统的常见应对策略

    解耦神器:MQ MQ是分布式架构中的解耦神器,应用非常普遍。有些分布式事务也是利用MQ来做的。由于其高吞吐量,在一...

网友评论

      本文标题:分布式事务解决方案(MQ)

      本文链接:https://www.haomeiwen.com/subject/catrpctx.html