二阶段提交 二阶段提交英語Twophase Commit是指在计算机网络以及数据库领域内为了使基于分布式系统架构下的所有节点在进行事务提交时保持一致性而设计的一种演算法通常二阶段提交也被称为是一种协议Protocol在分布式系统中每个节点虽然可以知晓自己的操作时成功或者失败却无法知道其他节点的操作的成功或失败当一个事务跨越多个节点时为了保持事务的ACID特性需要引入一个作为协调者的组件来统一掌控所有节点称作参与者的操作结果并最终指示这些节点是否要把操作结果进行真正的提交比如将更新后的数据写入磁盘等等因此二阶段提交的算法思路可以概括为 参与者将操作成败通知协调者再由协调者根据所有参与者的反馈情报决定各参与者是否要提交操作还是中止操作 需要注意的是二阶段提交英語PC不应该与并发控制中的二阶段锁英語PL混淆