分布式事务学习

分布式事务学习_第1张图片

什么是事务

本地事务主要靠关系型数据库来维护

分布式事务学习_第2张图片

事务隔离级别:读未提交 < 读已提交 < 可重复读 < 串行化

读未提交:可能读到一写中间数据,尚未完成时读到数据,而最后事务将数据做了最终修改或者事务发生回滚

读已提交:会发生不可重复读,即同一个事务中两次读取的数据不一致,即有别的事务对其进行了修改

可重复读:可能会出幻读,即在读的时候,有新的数据进行了插入

分布式事务学习_第3张图片

分布式事务学习_第4张图片

分布式事务学习_第5张图片

分布式事务学习_第6张图片

spring中的事务

首先数据源会跟数据库建立事务回话,数据源绑定以后,我们本地
会生成一个本地的事务管理器,本地事务管理器通过aop的方式进行切面的管理和事务的通知
,然后通过事务的切面和事务的通知结合起来,来进行对业务的事务的管理,即需要我在aop的地方配置
切面和切入点(即描述哪些业务和哪些方法需要切入)

分布式事务学习_第7张图片

分布式事务学习_第8张图片

分布式事务的解决方案(就是使用统一的事务管理器来管理两边的事务)

分布式事务学习_第9张图片

分布式事务学习_第10张图片

分布式事务学习_第11张图片

分布式事务学习_第12张图片

分布式事务学习_第13张图片

分布式事务学习_第14张图片

分布式事务学习_第15张图片

分布式事务学习_第16张图片

base理论

base理论是对cap的一种补充,不需要强一致性,只需要最终一致性即可,而且只要保证核心功能服务可用即可,即出现故障允许部分功能不可用,满足base理论的我们称之为柔性事务

分布式事务学习_第17张图片

分布式事务学习_第18张图片

三种分布式事务的架构

单服务-多库的事务解决方案

分布式事务学习_第19张图片

分库分表的事务:

分布式事务学习_第20张图片

多数据源多服务

分布式事务学习_第21张图片

刚性事务和柔性事务:

分布式事务学习_第22张图片

2pc又叫两阶段提交协议

分布式事务学习_第23张图片

分布式事务学习_第24张图片

XA方案(基于2pc的xa方案)

分布式事务学习_第25张图片

分布式事务学习_第26张图片

分布式事务学习_第27张图片

分布式事务学习_第28张图片

seata方案:

分布式事务学习_第29张图片

分布式事务学习_第30张图片

分布式事务学习_第31张图片

分布式事务学习_第32张图片

由于数据已经写入道数据库,所以seata的回滚是反向的操作

seata的实战

分布式事务学习_第33张图片

表结构在百度云中的day1 的资料下的sql文件夹下

链接: https://pan.baidu.com/s/1JyFa4vfN8n3rhs1J5ztlDw 提取码: vufs

分布式事务学习_第34张图片

-m file 表示数据存储以文件的方式,当然seata-server 也支持以数据库的方式

分布式事务学习_第35张图片

分布式事务学习_第36张图片

seata的执行流程

分布式事务学习_第37张图片

分布式事务学习_第38张图片

回滚的流程:

分布式事务学习_第39张图片

分布式事务学习_第40张图片

分布式事务学习_第41张图片

分布式事务学习_第42张图片

分布式事务学习_第43张图片

分布式事务学习_第44张图片

分布式事务之tcc解决方案

分布式事务学习_第45张图片

分布式事务学习_第46张图片

分布式事务学习_第47张图片

分布式事务学习_第48张图片

分布式事务学习_第49张图片

分布式事务学习_第50张图片

分布式事务学习_第51张图片

分布式事务学习_第52张图片

分布式事务学习_第53张图片

分布式事务学习_第54张图片

分布式事务学习_第55张图片

分布式事务学习_第56张图片

分布式事务学习_第57张图片

分布式事务学习_第58张图片

分布式事务学习_第59张图片

分布式事务学习_第60张图片

xa和seata方案都是在数据库层的解决方案,tcc的解决方案是在业务层

分布式事务的最终一致性解决方案

分布式事务学习_第61张图片

分布式事务学习_第62张图片

分布式事务学习_第63张图片

分布式事务学习_第64张图片

分布式事务学习_第65张图片

分布式事务学习_第66张图片

通过actimveq的来实现可靠消息最终一致性(因为有些应用场景,失败了我们希望重复尝试,直到成功为止)

分布式事务学习_第67张图片

分布式事务解决方案之最大努力通知

分布式事务学习_第68张图片

分布式事务学习_第69张图片

最大努力通知和可靠消息一致性有什么不同:

分布式事务学习_第70张图片分布式事务学习_第71张图片

分布式事务学习_第72张图片

分布式事务学习_第73张图片

 

分布式事务学习_第74张图片

分布式事务学习_第75张图片

分布式事务学习_第76张图片

分布式事务学习_第77张图片

分布式事务学习_第78张图片

你可能感兴趣的:(分布式事务)