commit
71ce067daa
@ -6,13 +6,13 @@
|
||||
|
||||
  分布式事务是企业集成中的一个技术难点,也是每一个分布式系统架构中都会涉及到的一个东西,特别是在微服务架构中,几乎是无法避免的。
|
||||
|
||||
##一、从单机事务到分布式
|
||||
## 一、从单机事务到分布式
|
||||
|
||||
###1.数据库事务
|
||||
### 1.数据库事务
|
||||
|
||||
我们都知道数据库事务的四个特性:原子性、一致性、隔离性和持久性,数据库事务由数据库软件自身来完成。假如数据库在提交事务的时候突然断电,数据库可以在日志记录中找到上一次事务操作然后根据当前数据库的情况进行undo回滚或者是redo前滚(基于某时刻的完整备份然后执行从该时刻到崩溃时间所有增删改查操作,使数据库恢复到崩溃前的状态)。在分布式环境中可能遇到的问题就更多了,例如机器宕机、网络异常、消息乱序、数据错误、存储数据丢失等等,数据库自身并没有比较好的解决方案(下文会提到一种数据库支持的解决方法)。
|
||||
|
||||
###2.分布式理论
|
||||
### 2.分布式理论
|
||||
|
||||
  当单个数据库的性能产生瓶颈的时候,我们可能会对数据库进行分区,这里分区指的是物理分区,分区后不同的库可能就在不同的服务器上了,这个时候单个数据库的ACID已经不能适应这种情况了,在集群情况下想保证集群的ACID是很困难的,即使能够达到,效率和性能也会大幅下降,而且难以拓展。这就需要一个新的理论**CAP原则**。
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user