RxJava编程语言爱好者Java服务器端编程

Seata与Lcn的区别

2021-10-07  本文已影响0人  迦叶_金色的人生_荣耀而又辉煌

上一篇 <<<SpringBoot整合Seata
下一篇 >>>分布式锁的实现方式汇总


相同点

a、都能解决分布式事务问题
b、都使用AOP代理事务
c、事务的提交和回滚都是由发起方决定。

不同点

核心:事务的回滚机制不一致,LCN是全局假关闭事务,Seata是采用undo_log生成逆向sql回滚操作。
a、LCN的事务代理是全局的,采用了假关闭模式。
Seata事务代理只是代理局部各自的事务,在原生sql的前后记录了操作的信息,存在了undo_log的日志中。
b、LCN的事务一直都锁着记录,只是不提交而已,容易造成数据的死锁。
Seata的局部事务已经写到了库中,避免了死锁现象,但容易出现脏读的情况。
c、LCN有控制台界面,Seata没有控制台界面


推荐阅读:
<<<分布式事务产生的背景
<<<解决分布式事务的核心思路
<<<柔性事务和刚性事务(ACID)
<<<CAP理论简单概况
<<<Base理论核心思想
<<<一致性协议--XA接口
<<<一致性协议--Jta规范
<<<一致性协议--2PC提交协议
<<<一致性协议--3PC提交协议
<<<2PC与3PC协议的提交区别
<<<主流的分布式事务解决框架
<<<LCN-框架介绍
<<<LCN-实现原理剖析
<<<LCN-事务协调者(TM)安装启动
<<<SpringBoot整合LCN
<<<LCN-核心源码分析
<<<LCN-集群模式介绍
<<<Seata-框架介绍
<<<Seata原理实现/执行流程/生命周期
<<<Seata-TM执行时突然宕机了会造成什么问题
<<<Seata-核心源码分析
<<<SpringBoot整合Seata

上一篇下一篇

猜你喜欢

热点阅读