分布式事物各方案常见使用场景

  • 2PC/3PC:依赖于数据库,能够很好的提供强一致性和强事务性,但延迟比较高,比较适合传统的单体应用,在同一个方法中存在跨库操作的情况,不适合高并发和高性能要求的场景。
  • TCC:适用于执行时间确定且较短,实时性要求高,对数据一致性要求高,比如互联网金融企业最核心的三个服务:交易、支付、账务。
  • 本地消息表/MQ 事务:适用于事务中参与方支持操作幂等,对一致性要求不高,业务上能容忍数据不一致到一个人工检查周期,事务涉及的参与方、参与环节较少,业务上有对账/校验系统兜底。
  • Saga 事务:由于 Saga 事务不能保证隔离性,需要在业务层控制并发,适合于业务场景事务并发操作同一资源较少的情况。Saga 由于缺少预提交动作,导致补偿动作的实现比较麻烦,例如业务是发送短信,补偿动作则得再发送一次短信说明撤销,用户体验比较差。所以,Saga 事务较适用于补偿动作容易处理的场景
相关推荐
Leo.yuan7 小时前
数据仓库建设怎么做?从源数据到分析报表全流程讲清
大数据·分布式·spark
明豆12 小时前
Redis 分布式缓存生产实战
redis·分布式·缓存
阿标在干嘛13 小时前
从单机到分布式:政策快报爬虫系统的三次重构
分布式·爬虫·重构
笨鸟先飞的橘猫14 小时前
游戏后端分布式学习——开篇
分布式·学习·游戏
六bring个六15 小时前
分布式软总线认证模块架构与实现分析
分布式·架构·open harmony
脱胎换骨-军哥1 天前
C++分布式系统设计:从通信引擎到分布式共识
开发语言·c++·分布式
海棠Flower未眠1 天前
SpringBoot 整合 Kafka 高性能消息队列(荣耀典藏版)
分布式·kafka
贺国亚2 天前
模型训练-分布式与GPU调度
分布式·wpf
大模型码小白2 天前
Milvus 架构设计:从向量索引到分布式检索,AI 原生存储引擎的内部机制
java·大数据·人工智能·分布式·深度学习·milvus
liulilittle2 天前
论分布式系统的半开闭问题
服务器·网络·分布式·系统架构·竞态