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

  • 2PC/3PC:依赖于数据库,能够很好的提供强一致性和强事务性,但延迟比较高,比较适合传统的单体应用,在同一个方法中存在跨库操作的情况,不适合高并发和高性能要求的场景。
  • TCC:适用于执行时间确定且较短,实时性要求高,对数据一致性要求高,比如互联网金融企业最核心的三个服务:交易、支付、账务。
  • 本地消息表/MQ 事务:适用于事务中参与方支持操作幂等,对一致性要求不高,业务上能容忍数据不一致到一个人工检查周期,事务涉及的参与方、参与环节较少,业务上有对账/校验系统兜底。
  • Saga 事务:由于 Saga 事务不能保证隔离性,需要在业务层控制并发,适合于业务场景事务并发操作同一资源较少的情况。Saga 由于缺少预提交动作,导致补偿动作的实现比较麻烦,例如业务是发送短信,补偿动作则得再发送一次短信说明撤销,用户体验比较差。所以,Saga 事务较适用于补偿动作容易处理的场景
相关推荐
JavaArchJourney1 小时前
分布式锁方案详解
分布式·后端
会开花的二叉树2 小时前
分布式文件存储服务设计与实现优化
分布式
blammmp3 小时前
RabbitMQ的高级特性
分布式·rabbitmq
半旧夜夏12 小时前
【分布式缓存】Redis持久化和集群部署攻略
java·运维·redis·分布式·缓存
还是大剑师兰特14 小时前
Hadoop面试题及详细答案 110题 (106-110)-- Hadoop高级与实战
大数据·hadoop·分布式
壹佰大多17 小时前
【Redisson分布式锁源码分析-3】
数据结构·分布式·mysql·spring·spring cloud·wpf·lua
不会写代码的ys18 小时前
仿RabbitMQ实现消息队列(一)--项目介绍
分布式·rabbitmq
数据库学啊19 小时前
分布式数据库架构设计指南:TDengine如何支持10亿级数据点的水平扩展
数据库·分布式·时序数据库·数据库架构·tdengine
mit6.82421 小时前
[VT-Refine] 强化学习工作流 | 分布式-近端策略优化(DPPO)
分布式·算法
Damon小智1 天前
HarmonyOS 5 开发实践:分布式任务调度与设备协同架构
分布式·架构·harmonyos