.企业级异步业务场景分布式事务设计与实践(2 )

一 序

  继续听下孙玄大佬的课,这是第二天学习笔记。

问题:1 mq下游消费服务如何保证事务的处理成功?

2. 异步场景分布式事务存在性能瓶颈吗?如何优化?

二 mq下游消费服务如何保证事务的处理成功

1. 问题是否需要幂等处理?

  删除服务不需要。

2. 是否需要去重?

  删除不需要,支付需要,因为多节点部署,存在这种可能。需要分布式锁。

异步场景分布式事务存在性能瓶颈吗?

1)拆分每一步,看是否是可水平扩展,是理论上就不存在性能瓶颈(只是理论,实际上要考虑成本、业务做折中。架构时刻不能忘记:降本增效)。

2) 响应延迟涉及的环节。主要是对用户层面的响应,而不是真正的响应。

纠正一个误区所不一定就是瓶颈,分布式锁的粒度:都是订单级别,订单与订单都是并行的。

三 企业级同步业务场景分布式事务设计与实践

3.1 sagas

注意:应用层要预先冻结资源。

以下单为例,

为了快速失败:所以补偿是异步的。补偿也得有接口API。补偿也要记录上下文(参数)。

 

 

失败处理:

   打error,报警,人工介入。

sagas适应:业务流程长、业务流程多。

猜你喜欢

转载自blog.csdn.net/bohu83/article/details/107292461