https://blog.csdn.net/bjweimengshu/article/details/79607522
两阶段提交
包含着两个角色:事务协调者和事务参与者。
第一阶段
三阶段提交
XA三阶段提交在两阶段提交的基础上增加了CanCommit阶段,并且引入了超时机制。
一旦事务参与者迟迟没有接到协调者的commit请求,会自动进行本地commit。
这样有效解决了协调者单点故障的问题。
但是性能问题和不一致的问题仍然没有根本解决。
TCC
TCC事务是Try、Commit、Cancel三种指令的缩写,其逻辑模式类似于XA两阶段提交,但是实现方式是在代码层面来人为实现。
消息队列
利用消息中间件来异步完成事务的后一半更新,实现系统的最终一致性。这个方式避免了像XA协议那样的性能问题。
