分布式事务是在分布式系统下绕不开的一个话题,它的概念是指:在分布式系统下,一个业务跨多个服务或数据源,每个服务都是一个分支事务,要保证多个分支事务最终一致性,即为分布式事务。本篇便是来介绍常见的几种分布式事务实现方案。
理论规范
先来了解下分布式领域的一些定理。
CAP 定理
分布式系统的三个指标:在分布式系统中,最多只能实现其中的两点,由于网络硬件肯定会出现延迟丢包等问题,所以分区容错性是必须实现的,因此只能在一致性和可用性之间进行权衡。
- 一致性(Consistency):用户访问分布式系统中的任意节点,得到的数据都是一致的
- 可用性(Availability):分布式系统中任意健康节点在任何时候都可以读写
- 分区容错性(Partition tolerance):在网络故障、某些节点不能通信的时候系统仍能继续工作
- 分区(Partition):因为网络故障或其它原因导致分布式系统中的部分节点与其它节点失去连接,形成独立分区
- 容错(Tolerance):在出现分区情况时,系统也要持续对外提供服务