分布式事务介绍

linlf03 linlf03     2022-12-04     264

关键词:

一、概念

    分布式事务就是将多个节点的事务看成一个整体处理

 分布式事务由事务参与者、资源服务器、事务管理器等组成 

    常见的分布式事务的例子: 支付、下订单等

 

二、实现思路

两段式事务和三段式事务

基于XA的分布式事务

基于消息的最终一致性方案

TCC编程式补偿事务(被认为最好的方式)

 

1、两段式事务(很少使用)

技术图片

 

 

2、基于XA的分布式事务

技术图片

 

 

3、基于消息的最终一致性方案(用的比较广泛)

技术图片

 

4、TCC编程式补偿事务

技术图片

 

 

 

三、基于消息的最终一致性方案与TCC编程式补偿事务的区别

基于消息事务是强一致性事务,会存在资源浪费

TCC事务是柔性事务,在try阶段要对资源做预留

TCC事务在确认或取消阶段释放资源

与基于消息事务对比,TCC的时效性更好

 

四、分布式事务框架

全局事务服务(Global Transaction Service,简称GTS)

蚂蚁金服分布式事务(Distributed Transaction-eXtended,简称DTX)

开源TCC框架(TCC-Ttansaction)

开源TCC框架(ByteTCC)

 

分布式事务实践解决数据一致性

第1章课程介绍介绍该课程的内容、学习成果、实例,还有学习所需的前提知识。 第2章事务原则与实现介绍了事务的四大原则,并通过实例介绍数据库实现事务的方法,以及使用JDBC实现事务的方法。 第3章使用Docker搭建... 查看详情

分布式事务

分布式事务我在上一期介绍了spring的事务原理(详情见《深入理解spring事务原理》),Spring事务本质是单机下的事务,是由数据库本身保证的。今天,我将介绍一种比较复杂的事务:分布式事务。1、什么是分布式事务分布式事... 查看详情

分布式事务

 学习一下分布式事务。 这篇文章尽可能的压缩篇幅,不做过多的介绍,像什么是事务就不介绍了。 # # 什么是分布式事务 分布式事务一定来源于多数据源。如果只有一个数据源,也就不存在什么分布式事... 查看详情

还不理解“分布式事务”?这篇给你讲清楚!

这篇文章将介绍什么是分布式事务,分布式事务解决什么问题,对分布式事务实现的难点,解决思路,不同场景下方案的选择,通过图解的方式进行梳理、总结和比较。相信耐心看完这篇文章,谈到分布式事务,不再只是有&ldquo... 查看详情

深入理解分布式事务

...据库本身保证的。今天,我将介绍一种比较复杂的事务:分布式事务。1、什么是分布式事务分布式事务就是指事务的参与者、支持事务的服务器、资源服务器以及事务管理器分别位于不同的分布 查看详情

老爷爷都能看懂的微服务架构系列001☀️分布式事务介绍-全面详细

分布式事务一:项目介绍数据库表二:在微服务架构中要面对的难点1:扣减库存时候的超卖问题2:以及归还库存时候的数据错误问题3:订单超时问题4:下单时候的事务三:分布式锁——解决的问题1:超卖问题,就是扣减库... 查看详情

rocketmq事务消息入门介绍(代码片段)

...概流程说明白,后续再具体细节进行开篇说明。主题引出分布式事务相关内容。RocketMQ事务消息。RocketMQ事务消息如何使用。RocketMQ事务消息是怎么实现的。为什么需要事务消息会查 查看详情

分布式事务,高并发下分布式事务的解决方案

...据库本身保证的。今天,我将介绍一种比较复杂的事务:分布式事务。1、什么是分布式事务分布式事务就是指事务的参与者、支持事务的服务器、资源服务器以及事务管理器分别位于不同的分布式系统的不同节点之上。以上是... 查看详情

分布式事务(seata)四大模式详解(代码片段)

前言在上一节中我们讲解了,关于分布式事务和seata的基本介绍和使用,感兴趣的小伙伴可以回顾一下《别再说你不知道分布式事务了!》最后小农也说了,下期会带给大家关于Seata中关于seata中AT、TCC、SAGA和XA模式的介绍和使用,... 查看详情

分布式一致性协议介绍(paxosraft)

 两阶段提交Two-phaseCommit(2PC):保证一个事务跨越多个节点时保持ACID特性;两类节点:协调者(Coordinator)和参与者(Participants),协调者只有一个,参与者可以有多个。过程:准备阶段:协调者询问参与者事务是否执行成... 查看详情

redis的java客户端jedis的八种调用方式(事务管道分布式)介绍

...s也非常强大和稳定,支持事务、管道及有jedis自身实现的分布式。在这里对jedis关于事务、管道和分布式的调用方式做一个简单的介绍和对比:一、普通同步方式最简单和基础的调用方式:1@Test2publicvoidtest1Normal(){3Jedisjedis=newJedis(... 查看详情

分布式事务之深入理解什么是2pc3pc及tcc协议?

导读 在上一篇文章《【分布式事务】基于RocketMQ搭建生产级消息集群?》中给大家介绍了基于RocketMQ如何搭建生产级消息集群。因为本系列文章最终的目的是介绍基于RocketMQ的事物消息来解决分布式系统中的数据一致性问题,... 查看详情

replication(下):事务,一致性与共识

...主要介绍事务、一致性以及共识,首先会介绍它们怎么在分布式系统中起作用,然后将尝试描述它们之间的内在联系,让大家了解,在设计分布式系统时也是有一定的“套路”可寻。最后,会介绍业界验证分布式算法的一些工具... 查看详情

分布式事务(seata)四大模式详解(代码片段)

前言在上一节中我们讲解了,关于分布式事务和seata的基本介绍和使用,感兴趣的小伙伴可以回顾一下《别再说你不知道分布式事务了!》最后小农也说了,下期会带给大家关于Seata中关于seata中AT、TCC、SAGA和XA模式的介... 查看详情

replication(下):事务,一致性与共识

...介绍事务、一致性以及共识,首先会介绍它们怎么在分布式系统中起作用,然后将尝试描述它们之间的内在联系,让大家了解,在设计分布式系统时也是有一定的“套路”可寻。最后,会介绍业界验证分布式... 查看详情

mysql分布式事务

关于Mysql分布式事务介绍,可参考:http://blog.csdn.net/luckyjiuyi/article/details/46955337分为两个阶段:准备和执行阶段。有两个角色:事务的管理者(TM)和事务执行者(RM,MysqlServer).XASTART 事务启动标识,使事务处于ACTIVE状态XAEND ... 查看详情

分布式事务(seata)四大模式详解(代码片段)

前言在上一节中我们讲解了,关于分布式事务和seata的基本介绍和使用,感兴趣的小伙伴可以回顾一下《别再说你不知道分布式事务了!》最后小农也说了,下期会带给大家关于Seata中关于seata中AT、TCC、SAGA和XA模式的介... 查看详情

分布式事务(seata)四大模式详解(代码片段)

前言在上一节中我们讲解了,关于分布式事务和seata的基本介绍和使用,感兴趣的小伙伴可以回顾一下《别再说你不知道分布式事务了!》最后小农也说了,下期会带给大家关于Seata中关于seata中AT、TCC、SAGA和XA模式的介... 查看详情