一种虚拟账户转账方法、装置、系统及存储介质制造方法及图纸

技术编号:23934598 阅读:362 留言:0更新日期:2020-04-25 02:41
本申请公开了一种虚拟账户转账方法、装置、系统及存储介质,具体包括:交易服务端在接收到用户的转账请求后,将转账请求的转账事务消息发送至消息中间件;交易服务端接收到所述消息中间件反馈的发送成功的信息,标记转账请求的状态为初始状态,初始状态表示已受理转账请求,交易服务端将标记为初始状态的转账事务消息发送至消息中间件;账务服务端根据预先配置的消费消息参数,从消息中间件拉取转账事务消息,并在执行拉取的转账事务消息后向交易服务端反馈转账成功通知;交易服务端变更转账请求的状态为转账成功状态,完成转账,基于上述方案,可以减轻账务服务端数据处理的压力,以保障账务服务端正常运行。

A virtual account transfer method, device, system and storage medium

【技术实现步骤摘要】
一种虚拟账户转账方法、装置、系统及存储介质
本申请涉及互联网支付
,尤其涉及一种虚拟账户转账方法、装置、系统及存储介质。
技术介绍
目前,在互联网支付业务中,可通过虚拟账户支付模式提供支付服务,用户在网上的支付交易可在用户的虚拟账户之间完成,虚拟账户之间进行转账交易的明细以及余额都会记录在账务系统中,账务系统记录虚拟账户之间转账交易的明细以及余额,转账双方的账户数据要一致、准确,余额变更无误。目前,现有技术中的账务系统之间接收交易系统发送的转账请求,不对转账请求进行事务处理并记录转账信息,然而,当一段时间内有大量转账请求发送到账务系统时,现有的账务系统接收和处理转账请求方式可能会因为转账单积压,导致账务系统的数据库因无法承受大量的转账请求而崩溃,账务系统无法正常工作。虽然现有技术中可以通过定时读取转账单的方式,一定程度地解决大量转账请求压垮账务系统的数据库的问题,但定时任务的执行时间间隔设置仍存在一些问题,如果设置的定时的时间间隔过大,用户的转账请求不能及时处理,可能导致用户转账过慢,则会影响用户体验,如果时间间隔设置的过小,则会给账务系统的数据库带来数据处理的压力,影响系统正常运行。
技术实现思路
针对上述现有技术,本专利技术实施例公开一种虚拟账户转账方法,通过在交易服务端和账务服务端之间设置消息中间件,消息中间件作为转账请求的缓冲,可以减轻账务服务端数据处理的压力、降低账务服务端数据库崩溃的风险,该方法包括:交易服务端在接收到用户的转账请求后,将所述转账请求的转账事务消息发送至用于对消息传递进行控制的消息中间件;所述交易服务端接收到所述消息中间件反馈的发送所述转账事务消息成功的信息,标记所述转账请求的状态为初始状态,所述初始状态表示已受理所述转账请求,交易服务端将标记为初始状态的转账事务消息发送至所述消息中间件;账务服务端根据预先配置的用于控制拉取消息的消费消息参数,从所述消息中间件拉取被标记为初始状态的所述转账事务消息,并在执行拉取的所述转账事务消息后向所述交易服务端反馈转账成功通知;所述交易服务端变更所述转账请求的状态为转账成功状态,完成转账。可选地,所述账务服务端执行拉取的所述转账事务消息的步骤包括:校验转账账户的参数信息与业务状态,所述转账事务消息的信息包括所述转账账户的参数信息与业务状态,所述转账账户包括出金账户和入金账户;当校验结果为正常时,则将所述转账账户的账号进行排序;根据所述排序的结果和预设的加锁顺序,锁定所述账号对应的转账账户;获取所述出金账户的余额,确定所述出金账户的余额是否可用;当所述出金账户的余额可用时,根据所述转账事务消息,分别更新所述出金账户的余额与所述入金账户的余额;保存所述转账账户的转账记录,完成执行所述转账事务消息。可选地,所述方法进一步包括:当所述交易服务端将标记为初始状态的转账事务消息发送至所述消息中间件失败时,所述消息中间件向所述交易服务端发送转账事务消息回查请求;所述交易服务端接收到所述转账事务消息回查请求,查询所述转账事务消息;当所述转账事务消息的状态为初始状态时,所述交易服务端将所述转账事务消息发送至所述消息中间件。可选地,当所述账务服务端从所述消息中间件拉取被标记为初始状态的所述转账事务消息失败时,所述方法进一步包括:根据预设的消息重试策略,所述账务服务端重新从所述消息中间件拉取所述转账事务消息。可选地,所述方法进一步包括:当所述交易服务端接收到所述消息中间件反馈的发送所述转账事务消息成功的信息时,所述交易服务端向所述用户返回转账请求受理成功的信息;当所述交易服务端接收到所述消息中间件反馈的发送所述转账事务消息失败的信息时,所述交易服务端向所述用户返回转账请求受理失败的信息。可选地,所述方法还包括:根据所述账务服务端的数据库的性能,设置所述消费消息参数,其中,所述消费消息参数包括消费线程数。根据本申请一个方面,提供一种虚拟账户转账装置,该装置包括:发送模块,用于交易服务端在接收到用户的转账请求后,将所述转账请求的转账事务消息发送至用于对消息传递进行控制的消息中间件;第一标记模块,用于所述交易服务端接收到所述消息中间件反馈的发送所述转账事务消息成功的信息,标记所述转账请求的状态为初始状态,所述初始状态表示已受理所述转账请求,交易服务端将标记为初始状态的转账事务消息发送至所述消息中间件;执行模块,用于账务服务端根据预先配置的用于控制拉取消息的消费消息参数,从所述消息中间件拉取被标记为初始状态的所述转账事务消息,并在执行拉取的所述转账事务消息后向所述交易服务端反馈转账成功通知;第二标记模块,用于所述交易服务端变更所述转账请求的状态为转账成功状态,完成转账。根据本申请一个方面,提供一种虚拟账户转账系统,所述系统包括:交易服务端、消息中间件、账务服务端以及用户终端,其中:交易服务端在接收到用户的转账请求后,将所述转账请求的转账事务消息发送至用于对消息传递进行控制的消息中间件;所述交易服务端接收到所述消息中间件反馈的发送所述转账事务消息成功的信息,标记所述转账请求的状态为初始状态,所述初始状态表示已受理所述转账请求,交易服务端将标记为初始状态的转账事务消息发送至所述消息中间件;账务服务端根据预先配置的用于控制拉取消息的消费消息参数,从所述消息中间件拉取被标记为初始状态的所述转账事务消息,并在执行拉取的所述转账事务消息后向所述交易服务端反馈转账成功通知;所述交易服务端变更所述转账请求的状态为转账成功状态,完成转账。根据本申请一个方面,提供一种计算机可读存储介质,其上存储有计算机指令,所述指令被处理器执行时可实现上述实施例中所述的虚拟账户转账方法中的步骤。根据本申请一个方面,提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述实施例中所述的虚拟账户转账方法。综上所述,本申请实施例方案以消息中间件作为交易服务端向账务服务端发送转账请求的缓冲,可以减轻大批量转账请求蜂拥至账务服务端而给账务服务端的数据库带来的数据处理的压力、降低账务服务端崩溃的风险,账务服务端可以支持大并发转账请求下的虚拟账户转账的实现。附图说明为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1示出了根据本申请一些实施例的应用场景100的示意图;图2示出了根据本申请一些实施例的虚拟账户转账方法200的流程图;图3示出了根据本申请一些实施例的方法300的流程图;图4示出了根据本申请一些实施例的方法400的流程图;图5示出了根据本申请本文档来自技高网...

【技术保护点】
1.一种虚拟账户转账方法,其特征在于,所述方法包括:/n交易服务端在接收到用户的转账请求后,将所述转账请求的转账事务消息发送至用于对消息传递进行控制的消息中间件;/n所述交易服务端接收到所述消息中间件反馈的发送所述转账事务消息成功的信息,标记所述转账请求的状态为初始状态,所述初始状态表示已受理所述转账请求,交易服务端将标记为初始状态的转账事务消息发送至所述消息中间件;/n账务服务端根据预先配置的用于控制拉取消息的消费消息参数,从所述消息中间件拉取被标记为初始状态的所述转账事务消息,并在执行拉取的所述转账事务消息后向所述交易服务端反馈转账成功通知;/n所述交易服务端变更所述转账请求的状态为转账成功状态,完成转账。/n

【技术特征摘要】
1.一种虚拟账户转账方法,其特征在于,所述方法包括:
交易服务端在接收到用户的转账请求后,将所述转账请求的转账事务消息发送至用于对消息传递进行控制的消息中间件;
所述交易服务端接收到所述消息中间件反馈的发送所述转账事务消息成功的信息,标记所述转账请求的状态为初始状态,所述初始状态表示已受理所述转账请求,交易服务端将标记为初始状态的转账事务消息发送至所述消息中间件;
账务服务端根据预先配置的用于控制拉取消息的消费消息参数,从所述消息中间件拉取被标记为初始状态的所述转账事务消息,并在执行拉取的所述转账事务消息后向所述交易服务端反馈转账成功通知;
所述交易服务端变更所述转账请求的状态为转账成功状态,完成转账。


2.根据权利要求1所述的方法,其特征在于,所述账务服务端执行拉取的所述转账事务消息的步骤包括:
校验转账账户的参数信息与业务状态,所述转账事务消息的信息包括所述转账账户的参数信息与业务状态,所述转账账户包括出金账户和入金账户;
当校验结果为正常时,则将所述转账账户的账号进行排序;
根据所述排序的结果和预设的加锁顺序,锁定所述账号对应的转账账户;
获取所述出金账户的余额,确定所述出金账户的余额是否可用;
当所述出金账户的余额可用时,根据所述转账事务消息,分别更新所述出金账户的余额与所述入金账户的余额;
保存所述转账账户的转账记录,完成执行所述转账事务消息。


3.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:当所述交易服务端将标记为初始状态的转账事务消息发送至所述消息中间件失败时,所述消息中间件向所述交易服务端发送转账事务消息回查请求;
所述交易服务端接收到所述转账事务消息回查请求,查询所述转账事务消息;
当所述转账事务消息的状态为初始状态时,所述交易服务端将所述转账事务消息发送至所述消息中间件。


4.根据权利要求1所述的方法,其特征在于,当所述账务服务端从所述消息中间件拉取被标记为初始状态的所述转账事务消息失败时,所述方法进一步包括:
根据预设的消息重试策略,所述账务服务端重新从所述消息中间件拉取所述转账事务消息。


5.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:
当所述交易服务端接收到所述消息中间件反馈的发送所述转账事务消息成功的信息时,所述交易服务端向所述用户返回转账请求受理成功的信息...

【专利技术属性】
技术研发人员:秦振海
申请(专利权)人:贝壳技术有限公司
类型:发明
国别省市:天津;12

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1