[程序员] 问一个关于订单模块的问题
Link Share :https://www.v2ex.com/t/631315#reply1
- via RSS
我目前负责开发一个公司小程序的拼团功能,把之前同事写的下单流程看了一遍。
确认他并没有考虑到一个并发情况:
1、用户支付后,系统等待微信支付的支付通知回调。
2、目前订单超时功能是用 Redis 过期通知做的,订单支付超时回调订单关闭的方法。
若两个方法同时触发,岂不是有并发的问题?
我目前给两个方法都加了 Redis 锁,锁订单——>判断订单状态——>执行业务
订单关闭也先查询了订单支付状态。
但是这样会出现用户支付后,微信没回调,Redis 键过期,把订单给取消,微信支付成功回调会把这笔钱退款。(我猜想的...目前还没出现这种情况)
感觉这样的交互体验并不理想,各位有做支付的是怎么设计或者处理的呢?能指点一二吗?
作者暂无likerid, 赞赏暂由本网站代持,当作者有likerid后会全部转账给作者(我们会尽力而为)。Tips: Until now, everytime you want to store your article, we will help you store it in Filecoin network. In the future, you can store it in Filecoin network using your own filecoin.
Support author:
Author's Filecoin address:
Or you can use Likecoin to support author: