分布式事务
参考文献
分布式事务,这一篇就够了
理论
事务
事务是一个不可分割的数据库操作序列,也是数据库并发控制的基本单位,其执行的结果必须使数据库从一种一致性状态变到另一种一致性状态.事务是逻辑上的一组操作,要么都执行,要么都不执行(支持连续SQL的集体成功或集体撤销.);
事务应该具有 4 个属性:原子性、一致性、隔离性、持久性.这四个属性通常称为 ACID 特性.
分布式事务
分布式事务指在分布式系统中,涉及到多个操作的一组事务,这些操作可能分布在不同的计算机上,这些操作必须要保证原子性、一致性、隔离性和持久性,以确保数据的正确性和可靠性.
在分布式系统中,由于存在多个数据节点,因此需要保证数据的一致性.如果在分布式系统中的每个节点都采用独立的事务处理,则可能会导致数据不一致的问题.为了解决这个问题,需要引入分布式事务,以保证多个节点之间的数据操作是一致的.
本质上来说,分布式事务就是为了保证不同数据库的数据一致性.
分布式事务的实现可以采用两种方式:基于两阶段提交协议(2PC)和基于补偿事务的方案.基于2PC的方案是一种经典的实现方式,它通过协调器来实现多个节点之间的事务协调, ...
分布式-概念
参考文献
大规模分布式系统架构与设计实战-彭渊
从Paxos到Zookeeper 分布式一致性原理与实践
极客时间- 分布式技术原理算法解析
CoreOS 实战:剖析 etcd
Raft动画演示
分布式事务之深入理解什么是2PC、3PC及TCC协议?
分布式概览
分布式起源
单兵模式: 单机模式
单机模式是指,所有应用程序和数据均部署在一台电脑或服务器上,由一台计算机完成所有的处理.
主要问题: 性能受限,存在单点失效问题.
游击队模式: 数据并行或数据分布式
为了解决单机模式的问题,并行计算得到了发展,进而出现了数据并行(也叫做数据分布式)模式.
并行计算采用消息共享模式使用多台计算机并行运行或执行多项任务,核心原理是每台计算机上执行相同的程序,将数据进行拆分放到不同的计算机上进行计算.
好处: 可以利用多台计算机并行处理多个请求,使得我们可以在相同的时间内完成更多的请求处理,解决了单机模式的计算效率瓶颈问题.
主要的问题: 对提升单个任务的执行性能及降低时延无效.
相同的应用部署到不同的服务器上,当大量用户请求过来,如何能比较均衡地转发到不同的应用服务器上(负载均衡) ...