您的位置:首页 > 房产 > 建筑 > 泉州网站建设技术托管_常德外贸网站优化推广_集合竞价口诀背熟6句_全渠道营销

泉州网站建设技术托管_常德外贸网站优化推广_集合竞价口诀背熟6句_全渠道营销

2025/3/11 6:53:39 来源:https://blog.csdn.net/ksn5461378/article/details/146104671  浏览:    关键词:泉州网站建设技术托管_常德外贸网站优化推广_集合竞价口诀背熟6句_全渠道营销
泉州网站建设技术托管_常德外贸网站优化推广_集合竞价口诀背熟6句_全渠道营销

1. 在微服务架构下,由于数据库和应用服务的拆分,导致原本一个事务单元中的多个 DML 操作, 变成了跨进程或者跨数据库的多个事务单元的多个 DML 操作,

而传统的数据库事务无法解决这类的问题,所以就引出了分布式事务的概念

2. 分布式事务本质上要解决的就是跨网络节点的多个事务的数据一致性问题,业内常见的解决方法有 两种

  1. 强一致性,就是所有的事务参与者要么全部成功,要么全部失败,全局事务协调者需要知道每 个事务参与者的执行状态,再根据状态来决定数据的提交或者回滚!
  2. 最终一致性,也叫弱一致性,也就是多个网络节点的数据允许出现不一致的情况,但是在最终 的某个时间点会达成数据一致。

基于 CAP 定理我们可以知道,强一致性方案对于应用的性能和可用性会有影响,所以对于数据一致性 要求不高的场景,就会采用最终一致性算法。

3. 在分布式事务的实现上,对于强一致性,我们可以通过基于 XA 协议下的二阶段提交来实现,对于 弱一致性,可以基于 TCC 事务模型、可靠性消息模型等方案来实现。

4. 市面上有很多针对这些理论模型实现的分布式事务框架,我们可以在应用中集成这些框架来实现分 布式事务。

而 Seata 就是其中一种,它是阿里开源的分布式事务解决方案,提供了高性能且简单易用的分布式事 务服务。

Seata 中封装了四种分布式事务模式,分别是:

  • AT 模式,是一种基于本地事务+二阶段协议来实现的最终数据一致性方案,也是 Seata 默认的解 决方案
  • TCC 模式,TCC 事务是 Try、Confirm、Cancel 三个词语的缩写,简单理解就是把一个完整的业 务逻辑拆分成三个阶段,然后通过事务管理器在业务逻辑层面根据每个分支事务的执行情况分别调 用该业务的 Confirm 或者 Cacel 方法。
  • Saga 模式,Saga 模式是 SEATA 提供的长事务解决方案,在 Saga 模式中,业务流程中每个参与 者都提交本地事务,当出现某一个参与者失败则补偿前面已经成功的参与者
  • XA 模式,XA 可以认为是一种强一致性的事务解决方法,它利用事务资源(数据库、消息服务等) 对 XA 协议的支持,以 XA 协议的机制来管理分支事务的一种 事务模式。

从这四种模型中不难看出,在不同的业务场景中,我们可以使用 Seata 的不同事务模型来解决不同业 务场景中的分布式事务问题,因此我们可以认为 Seata 是一个一站式的分布式事务解决方案。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com