我们的分布式事务的原理是这样的吗?

来源:8-13 实际开发中的经验小结

他门说这就是人生

2020-11-11

我们的分布式事务的原理是这样的吗?

比如,有订单服务,支付服务,库存服务 和 积分服务(四个微服务):

我们异步地开始为用户创建订单、支付、扣库存、加积分。

假设支付时,检查到订单还没有下完或者下订单失败,那么支付、扣库存、加积分,都会进入重试等待状态,直到都执行成功。

请问老师,我们的分布式事务的原理是这样的吗?

我先粗略地听了一遍,往后再来细看。

写回答

1回答

Moody

2020-11-11

飞天走秀同学你好:

应该是这样的:通知商户、分配骑手、结算、增加积分这几个步骤是顺序执行的,前面的步骤不执行,后面的步骤不会开始。这些步骤是订单服务控制的。

而我们的重试机制,是精细到每一次消息传输的内部,保证的是消息的正确发送与正确处理。比如说:订单服务给骑手服务发送消息,骑手服务处理失败了,会自动重新处理消息。这时候不涉及其他服务的重试。

希望可以帮到你~

0
6
慕仔9246611
回复
Moody
了解了,谢谢老师
2020-11-27
共6条回复

RabbitMQ精讲,提升工程实践能力,培养架构思维

消息驱动架构+订单状态机,二次开发,手写分布式事务框架。

470 学习 · 205 问题

查看课程