分布式事务

发布时间 2023-08-17 23:55:24作者: sellingpear

2023.8.17

先假设我们有一个订单系统,收到请求之后,我们要干这几件事:

1.生成订单

2.清空购物车

3.生成积分

4.1号账户扣款

5.2号账户收款

 

收到请求的服务是A,最慢的办法,我们在这个请求的接口中串行的调用其他服务中的接口,有异常,或者设计好请求的返回(理想情况,都有可以拿到的返回),就回滚。

 

进一步讲,可以把这几步操作中必要的做串行化,其他的可以整成异步的,可以用消息队列,设计好重试机制,收到完成消息往下走,如果收到对面的某个回调请求再去处理这样.