1. 执行过程中,所有参与节点都是事务阻塞型的。当参与者占有公共资源时,其他第三方节点访问公共资源不得不处于阻塞状态;
2. 参与者发生故障:协调者需要给每个参与者额外指定超时机制,超时后整个事务失败;
3. 协调者发生故障:参与者会一直阻塞下去。需要额外的备机进行容错;
4. 二阶段无法解决的问题:协调者再发出 commit 消息之后宕机,而唯一接收到这条消息的参与者同时也宕机了。那么即使协调者通过选举协议产生了新的协调者,这条事务的状态也是不确定的,没人知道事务是否被已经提交。
浙公网安备 33010602006230号
浙ICP备14015892号