CN109670952B - 一种代收付交易平台 - Google Patents

一种代收付交易平台 Download PDF

Info

Publication number
CN109670952B
CN109670952B CN201811519741.5A CN201811519741A CN109670952B CN 109670952 B CN109670952 B CN 109670952B CN 201811519741 A CN201811519741 A CN 201811519741A CN 109670952 B CN109670952 B CN 109670952B
Authority
CN
China
Prior art keywords
queue
data
batch
transaction
executed
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811519741.5A
Other languages
English (en)
Other versions
CN109670952A (zh
Inventor
杨戈
张磊
田帅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Foreign Economy And Trade Trust Co ltd
Original Assignee
China Foreign Economy And Trade Trust Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Foreign Economy And Trade Trust Co ltd filed Critical China Foreign Economy And Trade Trust Co ltd
Priority to CN201811519741.5A priority Critical patent/CN109670952B/zh
Publication of CN109670952A publication Critical patent/CN109670952A/zh
Application granted granted Critical
Publication of CN109670952B publication Critical patent/CN109670952B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Development Economics (AREA)
  • Technology Law (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • General Engineering & Computer Science (AREA)
  • Debugging And Monitoring (AREA)
  • Telephonic Communication Services (AREA)
  • Communication Control (AREA)

Abstract

本发明实施例涉及一种代收付交易平台,所述代收付交易平台包括接口程序、批次队列、交易消费队列、单笔队列、非单笔队列以及渠道网关回调监听程序。本申请提供的代收付交易平台,能够简化平台的部署,并提高代收付交易的效率。

Description

一种代收付交易平台
技术领域
本申请涉及网络交易技术领域,特别涉及一种代收付交易平台。
背景技术
随着线上支付的不断发展,涌现出各式各样的支付渠道。为了针对这些不同的支付渠道提供统一的管理机制,代收付交易平台应运而生。
在当前的代收付交易平台中,开发基础框架通常使用springmvc(spring modelview controller,spring框架下的模型-视图-控制器),并对其进行了封装。然而,该框架在使用过程中,开发步骤繁琐,开发效率低,并且在部署时需要安装独有的中间件。此外,现有的代收付交易平台与其它***交互接口方式为Webservice(页面服务),WebService使用了XML((eXtensible Markup Language,可扩展标记语言)对数据封装,这样会造成大量的数据要在网络中传输。
由上可见,目前需要一种更加高效、更加简洁的代收付交易平台。
发明内容
本申请的目的在于提供一种代收付交易平台,能够简化平台的部署,并提高代收付交易的效率。
为实现上述目的,本申请提供一种代收付交易平台,所述代收付交易平台包括接口程序、批次队列、交易消费队列、单笔队列、非单笔队列以及渠道网关回调监听程序,其中:
所述接口程序,用于接收业务***发来的数据报文,并校验所述数据报文的格式;若所述数据报文校验成功,将所述数据报文写入缓存和数据库,并将所述数据报文对应的批次ID(IDentity,标识)写入所述批次队列中;
所述批次队列,用于获取所述批次ID对应的批次交易数据,并从所述批次交易数据中解包出交易信息和条目信息后,将所述交易信息和所述条目信息写入缓存和数据库,并将所述条目信息写入所述交易消费队列中;
所述交易消费队列,用于获取下一个待执行的条目信息,并判断所述待执行的条目信息是按照批次处理还是按照单笔处理;
所述单笔队列,用于存放按照单笔处理的条目信息,并将所述按照单笔处理的条目信息发送给渠道网关;
所述非单笔队列,用于从所述交易消费队列中分批获取队列数据,并根据渠道批量接口将获取的所述队列数据批量发送给所述渠道网关;
所述渠道网关回调监听程序,用于根据渠道返回的回调状态,判断当前执行的条目信息是否具备下一个执行计划,若具备,获取并执行下一个执行计划。
进一步地,所述接口程序,还用于在所述数据报文校验失败后,将所述数据报文写入数据库,并向所述业务***返回失败结果。
进一步地,所述非单笔队列在分批获取队列数据时,预先读取所述交易消费队列的队列深度,并基于所述队列深度确定在一个批次中获取队列数据的数量,并按照确定出的所述数量从所述交易消费队列中获取当前批次的队列数据。
进一步地,所述非单笔队列还用于若同一个接口数据中有必须批量发送的数据时,将所述必须批量发送的数据在同一批次中发送至所述渠道网关。
进一步地,所述非单笔队列还用于若同一接口数据中没有必须批量发送的数据时,将所述同一接口数据转入所述单笔队列进行处理。
进一步地,所述交易消费队列还用于获取所述待执行的条目信息的路由信息,并将所述路由信息写入缓存和数据库中。
进一步地,所述批次队列在完成对批次交易数据的处理之后,将所述批次交易数据从缓存中删除。
进一步地,所述代收付交易平台还包括业务回调队列和缓存清理队列;
相应的,所述渠道网关回调监听程序还用于在当前执行的条目信息不具备下一个执行计划时,尝试获取下一个待执行的条目信息;若不存在下一个待执行的条目信息,将当前的交易数据存入所述业务回调队列和所述缓存数据清理队列。
进一步地,所述渠道网关回调监听程序还用于若存在下一个待执行的条目信息,调用所述下一个待执行的条目信息对应的路由,并将路由结果写入缓存和数据库,以得到需要执行的执行计划。
进一步地,在所述代收付交易平台中,开发框架使用spring boot(Spring引导框架),接口方式为Restful(Representational-State-Transfer ful,代表状态转换类的),部署框架使用spring cloud(Spring云框架),队列使用rabbitmq(rabbit massage queue,兔子消息队列)集群,与渠道交互频次限制机制为redis(REmote DIctionary Server,远程词典服务器)分布式锁。
由上可见,本申请提供的技术方案,针对业务***发来的数据报文,可以生成对应的条目信息,并将条目信息存放于交易消费队列中。针对交易消费队列中的条目信息,可以判断是进行单笔处理还是按照批次进行处理,从而执行不同的处理方式。通过渠道网关回调监听程序,可以保证后续的执行计划或者下一个条目信息能够被正常执行。此外,本申请提供的代收付交易平台,开发框架使用spring boot,接口方式改为Restful,部署简单方便,开发效率高。部署框架使用spring cloud,对服务及配置文件进行统一管理,方便维护。队列改为使用rabbitmq集群,此种队列更高效更稳定。与渠道交互频次限制机制改为redis分布式锁,简化了处理逻辑。因此,本申请提供的技术方案,能够简化平台的部署,并提高代收付交易的效率。
附图说明
图1为本申请实施例中代收付交易平台的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施方式中的附图,对本申请实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式仅仅是本申请一部分实施方式,而不是全部的实施方式。基于本申请中的实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施方式,都应当属于本申请保护的范围。
请参阅图1,本申请提供一种代收付交易平台,所述代收付交易平台包括接口程序、批次队列、交易消费队列、单笔队列、非单笔队列以及渠道网关回调监听程序,其中:
所述接口程序,用于接收业务***发来的数据报文,并校验所述数据报文的格式;若所述数据报文校验成功,将所述数据报文写入缓存和数据库,并将所述数据报文对应的批次ID写入所述批次队列中;
所述批次队列,用于获取所述批次ID对应的批次交易数据,并从所述批次交易数据中解包出交易信息和条目信息后,将所述交易信息和所述条目信息写入缓存和数据库,并将所述条目信息写入所述交易消费队列中;
所述交易消费队列,用于获取下一个待执行的条目信息,并判断所述待执行的条目信息是按照批次处理还是按照单笔处理;
所述单笔队列,用于存放按照单笔处理的条目信息,并将所述按照单笔处理的条目信息发送给渠道网关;
所述非单笔队列,用于从所述交易消费队列中分批获取队列数据,并根据渠道批量接口将获取的所述队列数据批量发送给所述渠道网关;
所述渠道网关回调监听程序,用于根据渠道返回的回调状态,判断当前执行的条目信息是否具备下一个执行计划,若具备,获取并执行下一个执行计划。
其中,所述业务***发来的数据报文例如可以是代收付报文、余额查询报文、账户明细查询报文等。数据库可以备份所有的报文校验结果,从而可以用于后期的维护和纠错。
在本实施方式中,所述接口程序,还用于在所述数据报文校验失败后,将所述数据报文写入数据库,并向所述业务***返回失败结果。
在本实施方式中,所述非单笔队列在分批获取队列数据时,预先读取所述交易消费队列的队列深度,并基于所述队列深度确定在一个批次中获取队列数据的数量,并按照确定出的所述数量从所述交易消费队列中获取当前批次的队列数据。
在本实施方式中,所述非单笔队列还用于若同一个接口数据中有必须批量发送的数据时,将所述必须批量发送的数据在同一批次中发送至所述渠道网关。
在本实施方式中,所述非单笔队列还用于若同一接口数据中没有必须批量发送的数据时,将所述同一接口数据转入所述单笔队列进行处理。
在本实施方式中,所述交易消费队列还用于获取所述待执行的条目信息的路由信息,并将所述路由信息写入缓存和数据库中。
在本实施方式中,所述批次队列在完成对批次交易数据的处理之后,将所述批次交易数据从缓存中删除。
在本实施方式中,所述代收付交易平台还包括业务回调队列和缓存清理队列;
相应的,所述渠道网关回调监听程序还用于在当前执行的条目信息不具备下一个执行计划时,尝试获取下一个待执行的条目信息;若不存在下一个待执行的条目信息,将当前的交易数据存入所述业务回调队列和所述缓存数据清理队列。
在本实施方式中,所述渠道网关回调监听程序还用于若存在下一个待执行的条目信息,调用所述下一个待执行的条目信息对应的路由,并将路由结果写入缓存和数据库,以得到需要执行的执行计划。
在本实施方式中,在所述代收付交易平台中,开发框架使用spring boot,接口方式改为Restful,部署框架使用spring cloud,队列使用rabbitmq集群,与渠道交互频次限制机制改为redis分布式锁。
由上可见,本申请提供的技术方案,针对业务***发来的数据报文,可以生成对应的条目信息,并将条目信息存放于交易消费队列中。针对交易消费队列中的条目信息,可以判断是进行单笔处理还是按照批次进行处理,从而执行不同的处理方式。通过渠道网关回调监听程序,可以保证后续的执行计划或者下一个条目信息能够被正常执行。此外,本申请提供的代收付交易平台,开发框架使用spring boot,接口方式改为Restful,部署简单方便,开发效率高。部署框架使用spring cloud,对服务及配置文件进行统一管理,方便维护。队列改为使用rabbitmq集群,此种队列更高效更稳定。与渠道交互频次限制机制改为redis分布式锁,简化了处理逻辑。因此,本申请提供的技术方案,能够简化平台的部署,并提高代收付交易的效率。
上面对本申请的各种实施方式的描述以描述的目的提供给本领域技术人员。其不旨在是穷举的、或者不旨在将本发明限制于单个公开的实施方式。如上所述,本申请的各种替代和变化对于上述技术所属领域技术人员而言将是显而易见的。因此,虽然已经具体讨论了一些另选的实施方式,但是其它实施方式将是显而易见的,或者本领域技术人员相对容易得出。本申请旨在包括在此已经讨论过的本发明的所有替代、修改、和变化,以及落在上述申请的精神和范围内的其它实施方式。

Claims (7)

1.一种代收付交易平台,其特征在于,所述代收付交易平台包括接口程序、批次队列、交易消费队列、单笔队列、非单笔队列以及渠道网关回调监听程序,其中:
所述接口程序,用于接收业务***发来的数据报文,并校验所述数据报文的格式;若所述数据报文校验成功,将所述数据报文写入缓存和数据库,并将所述数据报文对应的批次ID写入所述批次队列中;
所述批次队列,用于获取所述批次ID对应的批次交易数据,并从所述批次交易数据中解包出交易信息和条目信息后,将所述交易信息和所述条目信息写入缓存和数据库,并将所述条目信息写入所述交易消费队列中;
所述交易消费队列,用于获取下一个待执行的条目信息,并判断所述待执行的条目信息是按照批次处理还是按照单笔处理;
所述单笔队列,用于存放按照单笔处理的条目信息,并将所述按照单笔处理的条目信息发送给渠道网关;
所述非单笔队列,用于从所述交易消费队列中分批获取队列数据,并根据渠道批量接口将获取的所述队列数据批量发送给所述渠道网关;
所述渠道网关回调监听程序,用于根据渠道返回的回调状态,判断当前执行的条目信息是否具备下一个执行计划,若具备,获取并执行下一个执行计划;
所述非单笔队列在分批获取队列数据时,预先读取所述交易消费队列的队列深度,并基于所述队列深度确定在一个批次中获取队列数据的数量,并按照确定出的所述数量从所述交易消费队列中获取当前批次的队列数据;
所述代收付交易平台还包括业务回调队列和缓存清理队列;
相应的,所述渠道网关回调监听程序还用于在当前执行的条目信息不具备下一个执行计划时,尝试获取下一个待执行的条目信息;若不存在下一个待执行的条目信息,将当前的交易数据存入所述业务回调队列和所述缓存数据清理队列;
所述渠道网关回调监听程序还用于若存在下一个待执行的条目信息,调用所述下一个待执行的条目信息对应的路由,并将路由结果写入缓存和数据库,以得到需要执行的执行计划。
2.根据权利要求1所述的代收付交易平台,其特征在于,所述接口程序,还用于在所述数据报文校验失败后,将所述数据报文写入数据库,并向所述业务***返回失败结果。
3.根据权利要求1所述的代收付交易平台,其特征在于,所述非单笔队列还用于若同一个接口数据中有必须批量发送的数据时,将所述必须批量发送的数据在同一批次中发送至所述渠道网关。
4.根据权利要求1或3所述的代收付交易平台,其特征在于,所述非单笔队列还用于若同一接口数据中没有必须批量发送的数据时,将所述同一接口数据转入所述单笔队列进行处理。
5.根据权利要求1所述的代收付交易平台,其特征在于,所述交易消费队列还用于获取所述待执行的条目信息的路由信息,并将所述路由信息写入缓存和数据库中。
6.根据权利要求1所述的代收付交易平台,其特征在于,所述批次队列在完成对批次交易数据的处理之后,将所述批次交易数据从缓存中删除。
7.根据权利要求1所述的代收付交易平台,其特征在于,在所述代收付交易平台中,开发框架使用spring boot,接口方式为Restful,部署框架使用spring cloud,队列使用rabbitmq集群,与渠道交互频次限制机制为redis分布式锁。
CN201811519741.5A 2018-12-12 2018-12-12 一种代收付交易平台 Active CN109670952B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811519741.5A CN109670952B (zh) 2018-12-12 2018-12-12 一种代收付交易平台

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811519741.5A CN109670952B (zh) 2018-12-12 2018-12-12 一种代收付交易平台

Publications (2)

Publication Number Publication Date
CN109670952A CN109670952A (zh) 2019-04-23
CN109670952B true CN109670952B (zh) 2022-12-23

Family

ID=66144327

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811519741.5A Active CN109670952B (zh) 2018-12-12 2018-12-12 一种代收付交易平台

Country Status (1)

Country Link
CN (1) CN109670952B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110334006A (zh) * 2019-05-24 2019-10-15 平安银行股份有限公司 测试方法、装置、计算机装置及存储介质
CN112965873A (zh) * 2021-03-04 2021-06-15 中国邮政储蓄银行股份有限公司 页面处理方法、装置、存储介质及处理器

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104156850A (zh) * 2014-07-16 2014-11-19 通联支付网络服务股份有限公司 一种实时交易监控***
CN106210109A (zh) * 2016-07-26 2016-12-07 通联支付网络服务股份有限公司 一种用于综合支付的产品***
CN107197017A (zh) * 2017-05-23 2017-09-22 努比亚技术有限公司 一种基于消费队列的消费方法、终端及计算机可读存储介质
CN108446111A (zh) * 2018-03-26 2018-08-24 国家电网公司客户服务中心 一种基于Spring cloud的微服务构建方法
CN108537528A (zh) * 2018-04-10 2018-09-14 平安科技(深圳)有限公司 批量文件审核代付方法和***

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080177668A1 (en) * 2007-01-24 2008-07-24 Bruno Delean Computerized person-to-person payment system and method without use of currency

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104156850A (zh) * 2014-07-16 2014-11-19 通联支付网络服务股份有限公司 一种实时交易监控***
CN106210109A (zh) * 2016-07-26 2016-12-07 通联支付网络服务股份有限公司 一种用于综合支付的产品***
CN107197017A (zh) * 2017-05-23 2017-09-22 努比亚技术有限公司 一种基于消费队列的消费方法、终端及计算机可读存储介质
CN108446111A (zh) * 2018-03-26 2018-08-24 国家电网公司客户服务中心 一种基于Spring cloud的微服务构建方法
CN108537528A (zh) * 2018-04-10 2018-09-14 平安科技(深圳)有限公司 批量文件审核代付方法和***

Also Published As

Publication number Publication date
CN109670952A (zh) 2019-04-23

Similar Documents

Publication Publication Date Title
CN108076098B (zh) 一种业务处理方法及***
US8230040B2 (en) Open mobile business supporting system and method
CN108776934B (zh) 分布式数据计算方法、装置、计算机设备及可读存储介质
CN111694797B (zh) 一种文件上传及解析方法、装置、服务器及介质
US10505881B2 (en) Generating message envelopes for heterogeneous events
CN101286212A (zh) 业务流程执行方法、业务流程引擎及其部署方法
CN109271261B (zh) 一种事件统一处理方法、设备和存储介质
CN109670952B (zh) 一种代收付交易平台
CN110287266A (zh) 一种分布式***及数据处理方法
CN113703997A (zh) 集成多种消息代理的双向异步通信中间件***及实现方法
CN102137102B (zh) 一种支持多类信息发布方式的业务支撑平台实现方法
CN113761079A (zh) 数据访问方法、***和存储介质
CN106961529B (zh) 工单处理方法和通信服务设备
US20090172122A1 (en) Message Transmission Method, Message Transmission Device, and Storage Medium Recorded with Message Transmission Program
CN111159141A (zh) 一种去中心化的分布式数据同步方法、分布式节点及***
CN109308219B (zh) 任务处理方法、装置及分布式计算机***
CN111401819B (zh) ***间数据推送方法及***
CN114648012A (zh) 一种票据处理方法、装置、电子设备及计算机可读介质
CN116996440A (zh) 流量控制方法、装置、电子设备、存储介质及程序产品
CN114301970A (zh) 服务调用方法、装置、电子设备及存储介质
CN111866171A (zh) 报文处理方法、装置、电子设备和介质
CN114764324A (zh) 企业资源规划***及其集成方法
CN111290897A (zh) 异步存储测试方法、电子装置、计算机设备及存储介质
CN109885334A (zh) 连接组件、消息发送、接收方法和版本兼容***
CN109542976B (zh) 一种Oracle EBS数据库与Rabbit MQ服务器信息同步的方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant