08、分布式事务解决方法-如何选择各种解决方案

本文详细对比了2PC、TCC、可靠消息最终一致性和最大努力交付四种主流分布式事务解决方案,从一致性、吞吐量、实现复杂度等维度进行分析,并提供了清晰、实用的选型建议,帮助开发者根据业务场景选择最合适的方案。

一 各种方案对比

2PCTCC可靠消息最终一致性最大努力交付
一致性强一致性最终一致(偏强)最终一致最终一致
吞吐量
实现复杂的

二 如何选各种方案

1、 需要与其它系统对接的:最大努力交付;
2、 必须强一致的:2PC、TCC(其实一致性也挺强的);
3、 必须强一致但吞吐量要求较高的:TCC;
4、 必须强一致但要求实现简便又不追求吞吐量的:2PC;
5、 一致性要求可以是最终一致的:可靠消息最终一致性;
6、 一致性要求可以是最终一致的但是业务不核心的:最大努力交付;

TIPS:
Seata虽然是基于2PC,但又与传统2PC有所不同,特别是分支事务的提交timing。详见:分布式事务(第03篇)分布式事务解决方法-2PC(两阶段提交)

版权声明:本文不是「本站」原创文章,版权归原作者所有 | 原文地址: