Distributed Transaction

分布式事务

CAP

  • 一致性(Consistency):数据在任何时刻任何节点中都是符合预期的
  • 可用性(Availability):系统会不间断的提供服务
  • 分区容忍性(Partition Tolerance):部分因网络原因彼此失联形成“网络分区”时,系统仍能正常提供服务
CAP 定理中已证明三者不可兼得。
  • 由于在分布式系统中网络分区无法避免,因此放弃分区容忍性是不可行的。
  • 如果放弃可能性,一旦发生网络分区,节点之间同步信息的时间可能会无限延长。除部分业务(如银行、证券)需要强一致性的情况外,都不应该放弃可用性。
  • 如果放弃一致性,一旦发生分区,节点之间所提供的数据可能不一致。选择放弃强一致性,而保证最终一致性的 AP 系统是目前分布式系统的主流选择。

分布式事务模型

可靠事件队列(最大努力交付 Best-Effort Delivery)

TCC 事务(Try-Confirm-Cancel)

SAGA 事务