我不熟悉分布式事务,研究微服务体系结构中跨分布式事务的两阶段提交如何工作。根据我的理解,在该阶段的最后部分,事务协调器会询问每个节点是否准备好提交。如果所有人都同意,那么它会告诉他们继续进行。
但是阻止以下失败的原因是什么?
所有节点均响应已准备好提交 事务协调器告诉他们“继续提交”,但是其中一个节点提交失败(例如由于某些数据库约束或连接超时)
所有其他节点均已成功提交,但现在分布式事务已损坏
简而言之,当节点说他们准备好提交时,这意味着什么?
我假设每个节点都在运行一个普通数据库,而该数据库对分布式事务一无所知。