从上图可见,两阶段提交协议的关键在于“准备”操作。分布式事务协调者在第一阶段通过
对所有的分布式事务参与者请求“准备”操作,达成关于分布式事务一致性的共识。分布式
事务参与者在准备阶段必须完成所有的约束检查、并且确保后续提交或放弃时所需要的数
据已持久化。在第二队段,分布式事务协调者根据之前达到的提交或放弃的共识,请求所
有的分布式事务参与者完成相应的操作。
2.2 最末参与者优化(LPO)
两阶段提交协议要求分布式事务参与者实现一个特别的“准备”操作,无论在资源管理器
(如数据库)还是在业务服务中实现该操作都存在效率与复杂性的挑战。因此,两阶段提
交协议有一个重要的优化,称为“最末参与者优化”(Last Parcipant Opmizaon),允许两
阶段提交协议中有一个参与者不实现“准备”操作(称为单阶段参与者)。最末参与者优化
的原理如下图所示: