业务
电商系统三大黄金链路为:采购、购物、退货流程。每一个流程都牵涉了大量的分布式服务之间调用,其中最复杂核心的就是退货流程,以下是一个简单的模拟业务:
技术
1.分布式微服务调用
2.分布式事务
3.分布式幂等性
我们根据退货流程图,可以把分布式幂等性归类考虑在下面几个点:
1、创建退货申请单:
创建退货申请单类似于采购单,发生概率小,出现的话,告知退货申请单审核人员即可。
2、审核退货工单
只会审核待审核的退货工单,所以也不需要。
3、确认收到退货商品:调度退货入库
调度中心纯内存的操作,哪怕是被重复调用几次也是不要紧的,然后就会找wms中心,创建退货入库单。退货入库单里买主键基于业务的唯一索引。
4、退货入库提交审核
基于状态的唯一请求索引控制。
5、退货入库审核
更具状态相关的都是使用状态机模式保障。
调度中心:通知调度中心更新库存:使用去重表。
库存中心:调度中心通知库存中心更改库存:使用去重表。
会员中心:去重表
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。