zookeeper

2PC

2018-12-10  本文已影响53人  萝灏

2PC,是Two-Phase Commit 的缩写,也就是二阶段提交,是在数据库领域处理事务,保证原子性的一种常用算法。通常会把二阶段提交协议认为是一种一致性协议,在处理成功的时候统一执行事务,在处理失败的时候统一进行回滚,从而来有效的保证分布式数据的一致性。

协议说明

顾名思义,二阶段提交协议就是把事务的提交过程分为俩个阶段来进行处理,执行的过程如下:

优缺点

优点:原理简单,实现方便
缺点:同步阻塞,单点问题,数据不一致,太过保守。

缺点的前俩个都很容易理解,至于数据不一致的情况是在二阶段的commit的时候,可能有节点没有收到commit指令,于是出现了有的事务进行了提交,有的没有办法提交事务。太过保守则是任意一个节点的失败都会导致整个事务的失败。

上一篇 下一篇

猜你喜欢

热点阅读