Open hx78 opened 2 years ago
我理解分布式事务,就是一个事务里涉及到多个数据源,每个数据源有自己的事务,假设a,b两个服务,分别访问了数据源1和数据源2,并都开启了事务。对XA来说,XA两阶段提交过程如下
第一阶段,并没有真正commit,真正commit在第二阶段。 假设a在第二阶段commit成功,b有可能commit失败的,比如下面的场景 1 协调者挂了 2 数据源2挂了或者b服务到数据源2的网络不可达 3 服务b挂了
1.协调方启动进行重试就行了 2.重试,最终一致 3.重启
我理解分布式事务,就是一个事务里涉及到多个数据源,每个数据源有自己的事务,假设a,b两个服务,分别访问了数据源1和数据源2,并都开启了事务。对XA来说,XA两阶段提交过程如下
第一阶段,并没有真正commit,真正commit在第二阶段。 假设a在第二阶段commit成功,b有可能commit失败的,比如下面的场景 1 协调者挂了 2 数据源2挂了或者b服务到数据源2的网络不可达 3 服务b挂了