跳至主要內容

分布式事务基础与实现

KSJ小于 1 分钟架构师

分布式事务基础与实现

分布式事务用于保证跨多个服务或数据库的数据一致性,是分布式系统设计中的难点。

基本定义

分布式事务指涉及多个独立节点(数据库/服务)的事务操作,需保证整体一致性。

ACID 特性

  • 原子性(Atomicity)
  • 一致性(Consistency)
  • 隔离性(Isolation)
  • 持久性(Durability)

CAP 定理

  • 一致性(Consistency)
  • 可用性(Availability)
  • 分区容错性(Partition tolerance)

CAP 定理指出分布式系统无法同时满足三者,只能取其二。

BASE 理论

  • Basically Available(基本可用)
  • Soft state(软状态)
  • Eventually consistent(最终一致性)

BASE 理论是对 ACID 的弱化,更适合大规模分布式场景。

常见分布式事务方案

  • 两阶段提交(2PC)
  • 三阶段提交(3PC)
  • TCC(Try-Confirm-Cancel)
  • 本地消息表/可靠消息最终一致性
  • SAGA 模式

结构图

分布式事务结构图
分布式事务结构图

参考资料