支付逻辑

本来写好一篇了,可惜javaeye这几天不知道整什么,硬是把最后一篇日志弄丢了。

 

  最近部门在做支付分离,正好也画了个自己理解的模型。主要理念应该还是解耦:

1.将不重要的事情,剥离出主要路径,简化主流程响应时间。通过异步处理、模块划分来解耦复杂逻辑,耗时操作。

2. 模块的明晰划分。以后无论扩展促销方式还是支付中的规则限制,均无需伤筋动骨的联调。

做了这样的划分后,商品模块关心打标志位区分各类信息,提供打标志的商家UI操作;各促销模块独立具备发放、使用、退单等流程,记录操作流水。 支付中心则关心一切业务限制逻辑(比如n个商品支持红包,订单最多使用2个红包,每个红包2块钱。。。),负责完成整个支付流程的事物,写最终订单流水日志。 

 

这里小模块都是有独立事务的,最后被订单在外围调用,是一些“嵌套”的事务。 因此在不可靠环境下,可能外围支付中心事务失败,内部小事务却成功。因此各模块最终状态还需要依赖支付中心订单状态记录。类似“回调”的概念。

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值