我听到这段面试的时候觉得这可能是一个考察分布式事务的知识点,所以我回答了一下用spring cloud 引用lcn jar包在方法上加上LCN注解或者spring cloud alibaba 有一个 seata 可以解决,然后还把TCC补偿机制给说了一下,说的比较杂。但是面试官依然问我,现在ABC的情况是怎么处理。。。。我回答是全部回滚。
我后来面试结束之后想了想,B没有收到响应应该会有重试机制会再隔5面之前把的请求再发一次,如果C已经成功了,就要处理一下接口的幂等性问题,然后依然会返回成功的状态码,这次没有网络延时,应该返回成功了,如果还有就继续重试,重试5次之后还是失败就记录日志然后全部回滚,日志用于TCC或者自己手动补偿,没有延时B接收成功,就接着响应A这样就形成了一个成功的完整的闭环
不知道我后面想的这个回答对不对