首页 / 产品运营 / 想要解决支付掉单问题?这有两种系统设计方案

专业的短链接生成工具

链接域名

短网址有效期

想要解决支付掉单问题?这有两种系统设计方案

更新时间:2025-5-3 20:20:33 作者:爱短链

编者按介:在订单支付过程中,我们经常遇到这样的问题:显然支付了钱,但也扣除了钱,但订单没有成功。


在上面,作者为我们分享了一个解决方案。


在本文中,作者结合实际情况和案例总结了两种系统设计方案。


上次在文章《钱被扣了,订单却没有成功!支付异常最完整的解决方案》中提到,支付过程会出现「掉单、卡单」在这种情况下,对于用户来说,体验非常差,显然他们付了钱,扣除了钱,但订单没有成功。


在最后一篇文章中,我们简要介绍了解决方案。


这一次,小黑哥根据实际生产情况给出了两个详细的设计方案: 定期轮询补偿方案 延迟消息补偿计划 可根据自己系统的实际情况进行选择性参考。


「当然,以下设计方案可能并不完美。


如果读者有其他解决方案,请留言指出,一起讨论,一起成长~」 一、定期轮询补偿方案 1. 整体流程 本方案主要采用定期任务,批量查询订单记录,驱动查询具体支付结果,更新内部订单。


总体方案流程图如下: 定期任务补偿 前三个过程没什么好说的,正常的支付过程,我们详细说明下面几个步骤。


第三步调用支付通道后,如果支付通道端返回「支付受理成功或支付处理成功」,我们需要调用第四步,将此类订单插入单表。


如果支付直接成功,则可以返回正常流程。


回顾一下,支付宝、微信支付、网银支付等网关支付。


在这种支付模式下,支付渠道只能成功返回支付验收,具体支付结果需要接收支付渠道端的支付通知。


我们称之为异步支付。


还有同步支付,如银行卡支付、微信、支付宝代扣支付可以同步返还支付结果。


第五步,补充应用程序定期查询数据库,批量查询订单记录;第六步,补充应用程序使用线程池和多线程异步查询;第七步,调用支付渠道支付查询接口。


如果第七步的支付结果被查询为以下状态: 「支付结果是扣款成功」 「付款结果显然是失败」 「查询掉单记录最大次数」 「第八步删除单记录。


」 最后,如果订单查询仍在处理中,则在一定延迟后,重复第五步,重新订单补偿,直到成功或查询达到最大时间。


2. 相关问题 「为什么需要新的掉单表?不能直接使用支付订单表查询未成功订单吗?」 事实上,支付订单表确实可以直接使用,然后批量查询当天未成功的订单,补充程序启动支付查询。


那为什么要新建掉单表呢? 这主要是因为数据库查询的效率,因为支付订单表每天都会有大量的新记录。


随着时间的推移,这个表会有越来越多的记录。


「付款记录越多,批量范围查询效率越低,查询速度越慢。


」 因此,为了查询效率,建立一个新的单表。


这张表只记录未成功支付的订单,所以数据量会很小,所以查询效率会很高。


此外,订单丢失表中的记录不会永久保存,而是暂时的。


当支付结果查询成功,或支付结果明显失败,或查询次数达到规定的最大次数时,将删除订单记录。


「这就是为什么第八步需要删除单表。


」 如果您需要保存每个订单丢失表的查询细节,建议添加另一个订单丢失查询记录表,以保存每个查询记录。


如果您有其他问题,请留言。


3. 方案优缺点 定期轮询补偿方案最大的优点可能是系统架构方案相对简单,易于实施方案的缺点主要是「定时任务」上。


定期任务轮询方案自然会有以下不足: 「轮询效率略低」; 每次查询数据库都被记录下来,它仍然会被扫描(补充程序将根据某些策略决定是否启动支付渠道查询)「重复计算」的嫌疑; 「时效性不够好」,若每小时轮询一次,最坏情况下,时间误差小时; 为了解决时效性问题,提高定期任务查询效率, 1 跟踪查询效率 2 重复计算问题会更加明显。


二、延迟消息补偿方案 下面介绍另一种订单损失补偿方案,延迟消息补偿方案,整个过程类似于定期任务方案,最大的区别可能是从一个「拉模式」变成一种「推模式」。


总体方案流程图如下: 该方案的主要流程与定时方案相似,主要区别在于第四步、第五步和第八步。


第四步的过程从插入单表变为「延迟队列发送订单消息」;第五步,补充程序接收订单消息,然后触发付款订单查询;第八步,如果第七步的付款结果查询如下: 支付结果是扣款成功 付款结果显然是失败 查询掉单记录最大次数 补充程序将通知延迟队列成功消费,延迟队列将删除此订单。


其他状态将告知消费无效,延迟队列将在一定延迟后再次发送订单消息,然后继续重复第五步。


方案优缺点: 与定期轮询方案相比,延迟消息方案: 无需查询所有订单 效率高,时效性好 但是,延迟消息的计划需要基于「延迟队列」,实现起来比较复杂,目前开源实现也比较少。


三、小结 在支付过程中,我们可以采用异步补偿方案来解决这个问题,异步补偿方案可以采用以下两种: 定期轮询补偿方案 延迟消息补偿计划 定期轮询补偿方案相对简单,但时效性稍差。


一般来说,延迟消息补偿方案比较好,但实现起来比较复杂。


如果没有定制的延迟时间要求,可以直接使用 RocketMQ 推迟新闻,简单快捷。


另外「延迟队列」还有很多场景更多,不仅可以用于订单补偿,还可以用于支付订单和其他场景。


因此,有能力开发的团队可以开发一个通用的延迟队列。


推荐历史支付文章: 1. 轻轻扫描,立即扣除,解释付款代码背后的原则 2. 产品设计:解释银行卡支付背后的原则 3. 手机没有网络,但仍然可以支付,原则是什么? 4. 钱被扣了,但订单没有成功!异常支付最完整的解决方案 5. 一个订单,却误付了两笔钱!如何解决这种重复支付异常? 作者:楼下小黑哥;微信公众号@程序通事、支付行业、后端技术 特别说明:本网站的主要目的是收集与互联网运营相关的干货知识,为运营伙伴提供便利。


本网站收集的公共内容来自互联网或用户的贡献,这并不意味着本网站同意其观点,也不对网站内容的真实性负责。


如有侵权行为,请联系网站管理员删除,。


爱短链平台各工具使用方法及功能汇总

短链接

活码系统

微信外链

抖音卡片

相关搜索

创建短链接

注册与登录 首先,访问爱短链的官方网站,点击右上角的“注册”按钮,填写相关信息完成注册。注册成功后,使用账号和密码登录到平台后台。登录过程简单快捷,支持微信扫码和手机验证码等多种方式。 获取长链接 在准备创建短链接之前,你需要先获取想要缩短的长链接。例如,在微信公众号后台,打开需要生成短链接的文章,将该文章的长链接复制到剪贴板中。 生成短链接 登录爱短链平台后,你会看到后台界面提供了多种功能选项。点击“短链”功能,将刚刚复制的长链接粘贴到指定的输入框中。爱短链还允许用户绑定自己的域名,使短链接更具个性化和辨识度。设置完成后,点击“生成短链接”按钮,平台会立即为你生成对应的短链接。 使用短链接 短链接生成后,你可以将其复制并粘贴到公众号推文中需要添加链接的位置,如正文内容、阅读原文链接、公众号菜单栏等。在正文中插入短链接时,可以搭配一些吸引人的引导语,如“点击下方链接查看更多精彩内容”或“详情请戳[短链接]”等,以提高用户的点击率。

爱短链

2025-02-20 14:33:23

抖音链接跳转微信

抖音链接跳转微信不仅为品牌营销和个人推广提供了更多可能性,也为用户带来了更加便捷、高效的信息获取和互动体验。在未来,随着社交电商的蓬勃发展和用户需求的不断变化,抖音链接跳转微信将成为越来越多用户的首选引流方式,助力品牌营销和个人推广迈向新的高度。

爱短链

2025-01-15 16:13:31

活码二维码生成器在线

活码二维码生成器在线工具如爱短链等,操作简单,无需复杂的技术知识。用户只需在网页上打开相应的生成器平台,按照提示进行操作即可。通常,用户需要输入想要关联的信息,如网址、文本、图片、文件等,然后选择一些个性化设置,即可快速生成一个活码二维码。

爱短链

2025-01-15 16:13:31

生成短链接的工具

长链接的繁琐与不便愈发凸显,而一款优秀的短链接生成工具则成为了信息高效传播的关键。爱短链,正是这样一款脱颖而出的卓越工具,为你带来前所未有的链接管理体验。

爱短链

2025-01-15 16:13:31

跳转卡片在线生成

爱短链平台提供高效的跳转卡片在线生成功能,用户可轻松定制卡片模板,填入链接与信息,即刻生成吸引眼球的跳转卡片,适用于社交媒体、营销活动等场景,助力提升点击率与营销效果,实现精准引流。

爱短链

2025-01-15 16:13:31

最通俗易懂的短链接原理讲解

看了看,想要了解短链接算法的伙伴还是蛮多的,那么今天爱短链小编就帮大家带来详细的介绍。

爱短链

2022-05-30 15:20:34

微信活码的功能特点介绍

微信活码是营销推广行业必备的一个神器,它不但可以帮助我们更好的裂变,还能降低用户流失率。

爱短链

2022-05-19 12:37:01

营销推广必备的5个效率小工具

营销推广不仅要靠扎实的专业知识,在工具使用方面也是非常重要,没有好的工具就算自己有多么厉害的技能也会事倍功半。

爱短链

2022-05-18 14:08:22

用户喜欢

缩短链接:链接在线一键秒缩短

缩短链接是一种将长网址转换为短网址的服务,通常用于社交媒体、短信、电子邮件等场合,以便更简洁地分享链接。以下是一些在线一键缩短链接的方法和工具:

爱短链

2025-02-19 10:16:16

网址简化:1秒简化网址

网址简化,也称为URL缩短,是指将冗长的网址转换为简短、易记的链接。以下是几种快速简化网址的方法:

爱短链

2025-02-19 10:16:16

网站链接太长怎么缩短

当遇到网站链接太长需要缩短的情况时,可以采取以下几种方法:

爱短链

2025-02-18 16:04:47

h5页面跳转微信小程序

H5页面跳转微信小程序的需求普遍存在,因为微信小程序只能在微信内部访问,而H5页面可以在任何浏览器中访问,因此需要通过跳转来实现两者之间的衔接。以下是H5页面跳转微信小程序的主要方式:

爱短链

2025-02-18 16:04:46

链接缩短,教程分享,一招把链接缩短

链接缩短是一个方便用户分享和访问长链接的有效方法。以下是一招把链接缩短的详细教程:

爱短链

2025-02-18 14:15:53

微信卡片链接生成

微信卡片链接是指在微信中分享的一个特定格式的链接,通过该链接可以展示网页或内容的相关信息,并以卡片的形式呈现给接收者。以下是生成微信卡片链接的详细步骤:

爱短链

2025-02-18 09:57:08

微信活码免费在线制作

微信活码是一种可以智能切换的二维码,通常用于解决微信群扫码人数限制、微信号无限加好友、多渠道引流等问题。以下是一些免费在线制作微信活码的方法和步骤:

爱短链

2025-02-18 09:57:08

微信群活码,免费生成,永久生效

微信群二维码本身具有7天的有效期,微信官方并未提供直接生成永久有效微信群二维码的功能。但可以通过一些第三方工具实现类似永久有效的效果,以下是几种免费生成微信群活码并尽量保持其长期有效的方法:

爱短链

2025-02-18 09:57:08

全平台跨域跳转微信工具,助力企业全渠道获客

爱发布客服-依依

公网安备32010402001342号

苏ICP备2021048188号-3

© 爱短链 2019 | 南京推吧网络科技有限公司版权所有

客服