首页 新闻 会员 周边

关于支付宝与消息队列的问题

0
[已解决问题] 解决于 2016-11-21 14:44

各位大神问个问题:

  我现在在做支付宝遇到一个问题:如果有多个用户同时提交多个订单这个怎么解决?

      我在网上搜到的结果是用消息队列,这里我用的是rabbitmq,但是遇到一个逻辑上的问题:

网上对rabbitmq的解释是(消息队列一般是在项目中,将一些无需即时返回且耗时的操作提取出来,进行了异步处理,而这种异步处理的方式大大的节省了服务器的请求响应时间,从而提高了系统的吞吐量。)上面红色字体部分有点不明白,支付宝支付应该是需要即时返回结果的吧。请各位大神教教我这个小白。

谢谢啦!

一个点的未来的主页 一个点的未来 | 菜鸟二级 | 园豆:204
提问于:2016-11-20 14:01
< >
分享
最佳答案
0

一些支付行为是异步的,比如你走网页版的支付,当你最终进行支付后前端界面只是负责展示支付结果,而实际支付的交互是发生在服务端,一般是底层生成支付订单提交给扣款行,然后将用户输入的各种验证信息提交支付,这次的同步响应一般为我收到请求了,但不包含实际支付结果。当最终资金扭转完成后服务端会有一个回调(这个过程是异步的),通知提交方某个订单已经支付成功,这个时候商户(提交支付订单)才确认支付完成(甚至还包括二次验证,确认回调请求合法性)。

而这段时间界面上(以web为例)只是做了一系列跳转,最终查询支付结果呈现而已。

奖励园豆:5
Daniel Cai | 专家六级 |园豆:10424 | 2016-11-21 10:07
其他回答(1)
0

红色字体解释:比如下单系统,当你下完订单后有个减库存操作,将这个命令放在消息队列中就不管了,直接返回一个已成功下单消息。接下来就是队列和库存系统之间的事了(库存减少就是不需即使返回且耗时的操作)。以上观点纯属个人理解,勿喷

 

~扎克伯格 | 园豆:1923 (小虾三级) | 2016-11-21 12:30
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册