经测试:
以Ribbon RPC调用,A服务调用B服务,A服务数据库和B服务数据库是分开的,如果B服务有Trans 事务控制,B服务异常,B实现事务回滚;A服务根据B返回的-1,throw 异常,A实现事务回滚。
这样实现了分布式事务控制。 这是异常处理的情况。
但是,如果B服务执行成功,B返回途中,网络异常,B是完成事务提交的,但是A始终没有收到B的消息,A回滚,这样就数据不一致了。这种情况该怎么办?
LCN分布式事务。。。
经测试:
以Ribbon RPC调用,A服务调用B服务,A服务数据库和B服务数据库是分开的,如果B服务有Trans 事务控制,B服务异常,B实现事务回滚;A服务根据B返回的-1,throw 异常,A实现事务回滚。
这样实现了分布式事务控制。 这是异常处理的情况。
但是,如果B服务执行成功,B返回途中,网络异常,B是完成事务提交的,但是A始终没有收到B的消息,A回滚,这样就数据不一致了。这种情况该怎么办?
LCN分布式事务。。。