02、分布式事务 实战 - 分布式事务基础理论

一 什么是分布式事务

在分布式系统环境下,不同服务之间由网络协作完成事务叫做分布式事务。

二 分布式事务产生场景

1、 不同服务访问不同数据库实例;
2、 相同服务访问不同数据库实例;
3、 不同服务访问相同数据库实例;

三 分布式储存系统基础理论-CAP

  • 一致性(Consistency):保证同一时刻,分布式系统中所有备份数据值相同。任何操作访问系统各个节点,要么返回相同的最新值,要么返回超时。
  • 可用性(Availability):保证任何操作访问系统各个节点都不会出现超时,即使是返回旧的数据。
  • 容忍性/分区容错性(Partition Tolerance):一个节点挂掉,不影响其它节点提供服务。这是分布式系统最基本的能力。

在分布式系统中一致性和可用性相互矛盾,无法同时满足。我们只能二选一:保AP或者保CP。MySql集群保的是AP,Zookeeper集群保的是CP。

四 分布式储存系统基础理论-BASE

在实际生产环境中,AP组合使用的较多。但我们又必须保障一致性,我们可以容忍一致性有一些延迟,达到最终一致性,就产生了中间状态:数据同步中。 BASE理论是CAP中AP的一个扩展:通过牺牲强一致性(随时随地一致)来获得可用性,当出现故障部分不可用但是核心功能可用,允许数据一段时间内不一致,但最终一致。满足BASE理论的事务,我们可以称之为柔性事务。 BASE:

基本可用 Basically Available:当出现故障部分不可用但是核心功能可用 软状态 Soft State:允许中间状态(支付中、数据同步中) 最终一致 Eventually Consistent:所有节点数据最终达到一致