每个方法都是原子操作:
提供第三方服务的系统,要同时提供执行方法和对应的回滚方法
A系统调用B,C,D系统完成分布式事务
=========执行开始========
A.aa();
try {
B.bb();
} catch(Exception e) {
A.rollbackAa();
}
try {
C.cc();
} catch(Exception e) {
A.rollbackAa();
B.rollbackBb();
}
try {
D.dd();
} catch(Exception e) {
A.rollbackAa();
B.rollbackBb();
C.rollbackCc();
}
=======执行结束================
用补偿机制检查-----
多个系统间异常情况,进行补偿