CN106970846B - 支付***消息控制和处理方法、装置 - Google Patents

支付***消息控制和处理方法、装置 Download PDF

Info

Publication number
CN106970846B
CN106970846B CN201710152341.4A CN201710152341A CN106970846B CN 106970846 B CN106970846 B CN 106970846B CN 201710152341 A CN201710152341 A CN 201710152341A CN 106970846 B CN106970846 B CN 106970846B
Authority
CN
China
Prior art keywords
message
processed
service message
processing
service
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
CN201710152341.4A
Other languages
English (en)
Other versions
CN106970846A (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.)
Yinqing Technology Co., Ltd
Original Assignee
Yinqing Science And Technology (beijing) 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 Yinqing Science And Technology (beijing) Co Ltd filed Critical Yinqing Science And Technology (beijing) Co Ltd
Priority to CN201710152341.4A priority Critical patent/CN106970846B/zh
Publication of CN106970846A publication Critical patent/CN106970846A/zh
Application granted granted Critical
Publication of CN106970846B publication Critical patent/CN106970846B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • 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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • 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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/381Currency conversion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/547Messaging middleware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/54Indexing scheme relating to G06F9/54
    • G06F2209/548Queue

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Quality & Reliability (AREA)
  • Computer And Data Communications (AREA)
  • Digital Computer Display Output (AREA)

Abstract

本发明提供了一种支付***消息控制和处理方法、装置,涉及银行支付***数据处理技术领域。方法包括:从支付***的消息中间件中轮询读取消息,获取待处理业务报文;在当前线程数小于最大线程数阈值时,读取待处理业务报文;将待处理业务报文写入来报表;若写入来报表未出现异常,启动新线程,对待处理业务报文进行处理;若写入来报表出现异常,且异常次数大于等于预先设置的异常次数阈值,则将待处理业务报文放入错误队列;若写入来报表出现异常,且异常次数小于预先设置的异常次数阈值,将该待处理业务报文写入来报表出现异常的次数增加1,并抛出异常,制造事务回滚使得待处理业务报文回到消息中间件的消息队列中。

Description

支付***消息控制和处理方法、装置
技术领域
本发明涉及银行支付***数据处理技术领域,尤其涉及一种支付***消息控制和处理方法、装置。
背景技术
目前,随着金融业的不断发展,诸如外币支付等业务也得到了空前的发展。外币支付***(China Foreign Exchange Payment System,简称CFXPS)是以业务处理中心(简称FXCC)为核心,由直接参与机构等单一法人集中接入,由结算银行(简称FXSI)进行银行间外币资金结算的***。其中,业务处理中心主要负责外币支付指令的接收、存储、清分、转发,并将参与者的支付指令逐笔实时清算后,分币种分场次将结算指令提交结算银行进行结算。其中,外币支付***的直接参与机构分为直接参与者和特许参与者,直接参与者是直接接入业务处理中心的银行业金融机构,特许参与者是直接接入业务处理中心的支付清算组织等法人机构;另外,委托直接参与者办理外币支付业务的机构为间接参与者。结算银行是中国人民银行指定或授权的商业银行,可以为直接参与者开立外币结算账户,负责参与者之间的外币资金结算。
当前,外币支付***采用分布式应用架构。在外币支付***的分布式应用架构中,对外部消息的监听、接收、处理是至关重要的环节。目前对外部消息的监听、接收、处理的实现主要有J2EE体系中的MDB(Message Driven Bean)和Spring体系中的MDP(MessageDriven Pojo)。而目前MDB和MDP这两种方式在***环境上需要依赖容器,即MDB需要依赖j2ee容器、MDP需要依赖spring容器(容器是应用服务器中位于组件和平台之间的接口集合),这样严重制约了其使用场景,而外币支付***中有诸多节点需要使用并最大程度地减少对容器的依赖。可见,现有技术中在不依赖容器的情况下,难以进行支付***消息控制和处理。
发明内容
本发明的实施例提供一种支付***消息控制和处理方法、装置,以解决现有技术中在不依赖容器的情况下,难以进行支付***消息控制和处理的问题。
为达到上述目的,本发明采用如下技术方案:
一种支付***消息控制和处理方法,包括:
从支付***的消息中间件中轮询读取消息,获取待处理业务报文;
判断当前线程数是否大于预先设置的最大线程数阈值;
在当前线程数小于所述最大线程数阈值时,读取所述待处理业务报文,并确定待处理业务报文的类型;
在待处理业务报文的类型满足预先设置的报文类型条件时,将待处理业务报文写入来报表;
若将待处理业务报文写入来报表未出现异常,启动新线程,对待处理业务报文进行处理;
若将待处理业务报文写入来报表出现异常,且同一待处理业务报文写入来报表出现异常的次数大于等于预先设置的异常次数阈值,则将待处理业务报文放入错误队列;
若将待处理业务报文写入来报表出现异常,且同一待处理业务报文写入来报表出现异常的次数小于预先设置的异常次数阈值,则将该待处理业务报文写入来报表出现异常的次数增加1,并抛出该待处理业务报文写入来报表出现的异常,制造事务回滚使得待处理业务报文回到消息中间件的消息队列中。
进一步的,所述的支付***消息控制和处理方法,还包括:
在从支付***的消息中间件中轮询读取消息时,若所述消息中间件中没有待处理业务报文,且在一预设读取时长内未读取到消息中间件中的待处理业务报文,则生成失效标识。
具体的,在待处理业务报文的类型满足预先设置的报文类型条件时,将待处理业务报文写入来报表,包括:
在待处理业务报文的类型为TextMessage格式类型或BytesMessage格式类型时,将待处理业务报文写入来报表。
进一步的,所述的支付***消息控制和处理方法,还包括:
在待处理业务报文的类型不为TextMessage格式类型和BytesMessage格式类型时,将待处理业务报文的类型记录于***异常日志中,并将所述待处理业务报文删除。
具体的,所述启动新线程,对待处理业务报文进行处理,包括:
将当前线程数增加1,并从待处理业务报文中获取报文业务号;
根据所述报文业务号获取与所述报文业务号对应的业务处理策略;
根据所述业务处理策略对待处理业务报文进行处理;
在对待处理业务报文进行处理后判断待处理业务报文的基础信息是否存在异常;
若待处理业务报文的基础信息存在异常,将来报表中记录待处理业务报文处理次数设为1,并将当前线程数减1,以结束对待处理业务报文的处理;所述基础信息包括待处理业务报文的报文格式以及报文处理权限;
若待处理业务报文的基础信息不存在异常,判断对待处理业务报文的处理返回值是否为空;
若对待处理业务报文的处理返回值为空,表示对待处理业务报文的数据处理正常,将当前线程数减1,以结束对待处理业务报文的处理;
若对待处理业务报文的处理返回值不为空,表示对待处理业务报文的数据处理出现异常,将待处理业务报文放入错误队列,将当前线程数减1,以结束对待处理业务报文的处理。
具体的,根据所述业务处理策略对待处理业务报文进行处理,包括:
根据待处理业务报文进行消息中间件操作;
若进行消息中间件操作正常,则进行消息中间件提交;
若进行消息中间件操作出现异常,则进行消息中间件回滚,不进行消息中间件提交;
若进行消息中间件提交时出现异常,则进行消息中间件回滚,使得待处理业务报文回到消息中间件的消息队列中。
进一步的,根据所述业务处理策略对待处理业务报文进行处理,还包括:
根据待处理业务报文进行***数据库操作;
若进行***数据库操作正常,则进行***数据库提交;
若进行***数据库操作出现异常,则进行***数据库回滚,确定待处理业务报文入来报表失败,抛出进行***数据库操作异常,进行消息中间件回滚,使得待处理业务报文回到消息中间件的消息队列中;
若进行***数据库提交出现异常,则进行***数据库回滚,确定待处理业务报文入来报表失败,抛出进行***数据库操作异常,进行消息中间件回滚,使得待处理业务报文回到消息中间件的消息队列中。
此外,所述的支付***消息控制和处理方法,还包括:
在从待处理业务报文中获取报文业务号之后,根据所述报文业务号确定待处理业务报文是否已经被处理;
若待处理业务报文已经被处理,则将待处理业务报文删除。
一种支付***消息控制和处理装置,包括:
轮询读取单元,用于从支付***的消息中间件中轮询读取消息,获取待处理业务报文;
线程控制单元,用于判断当前线程数是否大于预先设置的最大线程数阈值;
报文类型确定单元,用于在当前线程数小于所述最大线程数阈值时,读取所述待处理业务报文,并确定待处理业务报文的类型;
来报表写入单元,用于在待处理业务报文的类型满足预先设置的报文类型条件时,将待处理业务报文写入来报表;
待处理业务报文处理单元,用于在将待处理业务报文写入来报表未出现异常时,启动新线程,对待处理业务报文进行处理;
异常处理单元,用于在将待处理业务报文写入来报表出现异常,且同一待处理业务报文写入来报表出现异常的次数大于等于预先设置的异常次数阈值时,将待处理业务报文放入错误队列;
回滚单元,用于在将待处理业务报文写入来报表出现异常,且同一待处理业务报文写入来报表出现异常的次数小于预先设置的异常次数阈值时,将该待处理业务报文写入来报表出现异常的次数增加1,并抛出该待处理业务报文写入来报表出现的异常,制造事务回滚使得待处理业务报文回到消息中间件的消息队列中。
进一步的,所述的支付***消息控制和处理装置,还包括:
失效标识生成单元,用于在从支付***的消息中间件中轮询读取消息时,若所述消息中间件中没有待处理业务报文,且在一预设读取时长内未读取到消息中间件中的待处理业务报文时,则生成失效标识。
此外,所述来报表写入单元,具体用于:
在待处理业务报文的类型为TextMessage格式类型或BytesMessage格式类型时,将待处理业务报文写入来报表。
进一步的,所述支付***消息控制和处理装置,还包括:
待处理业务报文删除单元,用于在待处理业务报文的类型不为TextMessage格式类型和BytesMessage格式类型时,将待处理业务报文的类型记录于***异常日志中,并将所述待处理业务报文删除。
具体的,所述待处理业务报文处理单元,包括:
报文业务号获取模块,用于将当前线程数增加1,并从待处理业务报文中获取报文业务号;
业务处理策略获取模块,用于根据所述报文业务号获取与所述报文业务号对应的业务处理策略;
待处理业务报文处理模块,用于根据所述业务处理策略对待处理业务报文进行处理;
基础信息异常判断模块,用于在对待处理业务报文进行处理后判断待处理业务报文的基础信息是否存在异常;
基础信息异常处理模块,用于在待处理业务报文的基础信息存在异常时,将来报表中记录待处理业务报文处理次数设为1,并将当前线程数减1,以结束对待处理业务报文的处理;所述基础信息包括待处理业务报文的报文格式以及报文处理权限;
处理返回值判断模块,用于在待处理业务报文的基础信息不存在异常时,判断对待处理业务报文的处理返回值是否为空;
所述待处理业务报文处理模块,还用于在对待处理业务报文的处理返回值为空时,表示对待处理业务报文的数据处理正常,将当前线程数减1,以结束对待处理业务报文的处理;在对待处理业务报文的处理返回值不为空时,表示对待处理业务报文的数据处理出现异常,将待处理业务报文放入错误队列,将当前线程数减1,以结束对待处理业务报文的处理。
此外,所述待处理业务报文处理模块,具体用于:
根据待处理业务报文进行消息中间件操作;
在进行消息中间件操作正常时,进行消息中间件提交;
在进行消息中间件操作出现异常时,进行消息中间件回滚,不进行消息中间件提交;
在进行消息中间件提交时出现异常时,进行消息中间件回滚,使得待处理业务报文回到消息中间件的消息队列中。
此外,所述待处理业务报文处理模块,具体还用于:
根据待处理业务报文进行***数据库操作;
在进行***数据库操作正常时,进行***数据库提交;
在进行***数据库操作出现异常时,进行***数据库回滚,确定待处理业务报文入来报表失败,抛出进行***数据库操作异常,进行消息中间件回滚,使得待处理业务报文回到消息中间件的消息队列中;
在进行***数据库提交出现异常时,进行***数据库回滚,确定待处理业务报文入来报表失败,抛出进行***数据库操作异常,进行消息中间件回滚,使得待处理业务报文回到消息中间件的消息队列中。
进一步的,所述的支付***消息控制和处理装置,还包括:
防重账处理单元,用于在从待处理业务报文中获取报文业务号之后,根据所述报文业务号确定待处理业务报文是否已经被处理;在待处理业务报文已经被处理时,将待处理业务报文删除。
本发明实施例提供的一种支付***消息控制和处理方法、装置,首先从支付***的消息中间件中轮询读取消息,获取待处理业务报文;判断当前线程数是否大于预先设置的最大线程数阈值;在当前线程数小于所述最大线程数阈值时,读取所述待处理业务报文,并确定待处理业务报文的类型;在待处理业务报文的类型满足预先设置的报文类型条件时,将待处理业务报文写入来报表;若将待处理业务报文写入来报表未出现异常,启动新线程,对待处理业务报文进行处理;若将待处理业务报文写入来报表出现异常,且同一待处理业务报文写入来报表出现异常的次数大于等于预先设置的异常次数阈值,则将待处理业务报文放入错误队列;若将待处理业务报文写入来报表出现异常,且同一待处理业务报文写入来报表出现异常的次数小于预先设置的异常次数阈值,则将该待处理业务报文写入来报表出现异常的次数增加1,并抛出该待处理业务报文写入来报表出现的异常,制造事务回滚使得待处理业务报文回到消息中间件的消息队列中。本发明对支付***消息的控制和处理可读取不同的消息中间件,不依赖任何特定的容器,可同时处理大量的待处理业务数据,解决了多用户客户端压力并发、大业务量后台压力并发问题,避免了现有技术中在不依赖容器的情况下,难以进行支付***消息控制和处理的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种支付***消息控制和处理方法的流程图一;
图2为本发明实施例提供的一种支付***消息控制和处理方法的流程图二;
图3为本发明实施例中的启动新线程,对待处理业务报文进行处理的过程示意图;
图4为本发明实施例提供的一种支付***消息控制和处理装置的结构示意图一;
图5为本发明实施例提供的一种支付***消息控制和处理装置的结构示意图二。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供一种支付***消息控制和处理方法,包括:
步骤101、从支付***的消息中间件中轮询读取消息,获取待处理业务报文。
步骤102、判断当前线程数是否大于预先设置的最大线程数阈值。
步骤103、在当前线程数小于所述最大线程数阈值时,读取所述待处理业务报文,并确定待处理业务报文的类型。
步骤104、在待处理业务报文的类型满足预先设置的报文类型条件时,将待处理业务报文写入来报表。
在步骤104之后,执行步骤105、步骤106或者步骤107。
步骤105、若将待处理业务报文写入来报表未出现异常,启动新线程,对待处理业务报文进行处理。
步骤106、若将待处理业务报文写入来报表出现异常,且同一待处理业务报文写入来报表出现异常的次数大于等于预先设置的异常次数阈值,则将待处理业务报文放入错误队列。
步骤107、若将待处理业务报文写入来报表出现异常,且同一待处理业务报文写入来报表出现异常的次数小于预先设置的异常次数阈值,则将该待处理业务报文写入来报表出现异常的次数增加1,并抛出该待处理业务报文写入来报表出现的异常,制造事务回滚使得待处理业务报文回到消息中间件的消息队列中。
本发明实施例提供的一种支付***消息控制和处理方法,首先从支付***的消息中间件中轮询读取消息,获取待处理业务报文;判断当前线程数是否大于预先设置的最大线程数阈值;在当前线程数小于所述最大线程数阈值时,读取所述待处理业务报文,并确定待处理业务报文的类型;在待处理业务报文的类型满足预先设置的报文类型条件时,将待处理业务报文写入来报表;若将待处理业务报文写入来报表未出现异常,启动新线程,对待处理业务报文进行处理;若将待处理业务报文写入来报表出现异常,且同一待处理业务报文写入来报表出现异常的次数大于等于预先设置的异常次数阈值,则将待处理业务报文放入错误队列;若将待处理业务报文写入来报表出现异常,且同一待处理业务报文写入来报表出现异常的次数小于预先设置的异常次数阈值,则将该待处理业务报文写入来报表出现异常的次数增加1,并抛出该待处理业务报文写入来报表出现的异常,制造事务回滚使得待处理业务报文回到消息中间件的消息队列中。本发明对支付***消息的控制和处理可读取不同的消息中间件,不依赖任何特定的容器,可同时处理大量的待处理业务数据,解决了多用户客户端压力并发、大业务量后台压力并发问题,避免了现有技术中在不依赖容器的情况下,难以进行支付***消息控制和处理的问题。
为了使本领域的技术人员更好的了解本发明,下面列举一个更为详细的实施例,如图2所示,本发明实施例提供一种支付***消息控制和处理方法,包括:
步骤201、从支付***的消息中间件中轮询读取消息,获取待处理业务报文。
此处,在从支付***的消息中间件中轮询读取消息时,若所述消息中间件中没有待处理业务报文,且在一预设读取时长内未读取到消息中间件中的待处理业务报文,则生成失效标识(可以表示为null),其中预设读取时长为jms.receiveTimeout,默认值可以为120000,单位为毫秒,即120秒。
另外,为了避免重账问题,在从待处理业务报文中获取报文业务号之后,根据报文业务号确定待处理业务报文是否已经被处理;在待处理业务报文已经被处理时,则将待处理业务报文删除。
步骤202、判断当前线程数是否大于预先设置的最大线程数阈值。
在当前线程数大于所述最大线程数阈值时,执行步骤210。在当前线程数小于所述最大线程数阈值时,执行步骤203。
由于线程数过多可能导致Java虚拟机(Java Virtual Machine,简称JVM)发生异常,因此需要设置最大线程数阈值,避免线程数过多。
步骤203、读取所述待处理业务报文,并确定待处理业务报文的类型是否为TextMessage格式类型或BytesMessage格式类型。
在待处理业务报文的类型不为TextMessage格式类型和BytesMessage格式类型时,执行步骤204。在待处理业务报文的类型为TextMessage格式类型或BytesMessage格式类型时,执行步骤205。
由于在消息中间件中Java消息服务(Java Message Service,简称JMS)的报文的类型有很多,而此处待处理业务报文的处理仅支持TextMessage格式类型和BytesMessage格式类型,因此需要对待处理业务报文的类型进行筛选。
步骤204、将待处理业务报文的类型记录于***异常日志中,并将所述待处理业务报文删除。
步骤205、将待处理业务报文写入来报表,并判断将待处理业务报文写入来报表是否出现异常。
若将待处理业务报文写入来报表未出现异常,执行步骤206。否则,若将待处理业务报文写入来报表出现异常,执行步骤207。
步骤206、启动新线程,对待处理业务报文进行处理。在步骤206之后,执行步骤210。
步骤207、判断同一待处理业务报文写入来报表出现异常的次数是否大于等于预先设置的异常次数阈值。
若同一待处理业务报文写入来报表出现异常的次数大于等于预先设置的异常次数阈值,执行步骤208。若同一待处理业务报文写入来报表出现异常的次数小于预先设置的异常次数阈值,执行步骤209。此处,该预先设置的异常次数阈值可以为3次。
步骤208、将待处理业务报文放入错误队列。在步骤208之后,执行步骤210。
步骤209、将该待处理业务报文写入来报表出现异常的次数增加1,并抛出该待处理业务报文写入来报表出现的异常,制造事务回滚使得待处理业务报文回到消息中间件的消息队列中。在步骤209之后,执行步骤210。
步骤210、进行支付***事务提交,完成支付***消息控制和处理。
在上述步骤206中,启动新线程,对待处理业务报文进行处理的过程可以如图3所示,包括:
步骤301、将当前线程数增加1,并从待处理业务报文中获取报文业务号。
步骤302、根据所述报文业务号获取与所述报文业务号对应的业务处理策略。
此处,该业务处理策略可以是以业务处理bean的形式来实现,其中bean是用来描述Java软件组件的模型,是应用程序素材的角色。
步骤303、根据所述业务处理策略对待处理业务报文进行处理。
此处,步骤303中的根据所述业务处理策略对待处理业务报文进行处理,包括:
根据待处理业务报文进行消息中间件操作。
若进行消息中间件操作正常,则进行消息中间件提交。
若进行消息中间件操作出现异常,则进行消息中间件回滚,不进行消息中间件提交。
若进行消息中间件提交时出现异常,则进行消息中间件回滚,使得待处理业务报文回到消息中间件的消息队列中。
另外,步骤303中的根据所述业务处理策略对待处理业务报文进行处理,还可以包括:
根据待处理业务报文进行***数据库操作。
若进行***数据库操作正常,则进行***数据库提交。
若进行***数据库操作出现异常,则进行***数据库回滚,确定待处理业务报文入来报表失败,抛出进行***数据库操作异常,进行消息中间件回滚,使得待处理业务报文回到消息中间件的消息队列中。
若进行***数据库提交出现异常,则进行***数据库回滚,确定待处理业务报文入来报表失败,抛出进行***数据库操作异常,进行消息中间件回滚,使得待处理业务报文回到消息中间件的消息队列中。
步骤304、在对待处理业务报文进行处理后判断待处理业务报文的基础信息是否存在异常。
若待处理业务报文的基础信息存在异常,执行步骤305。否则,若待处理业务报文的基础信息不存在异常,执行步骤306。
步骤305、将来报表中记录待处理业务报文处理次数设为1,并将当前线程数减1,以结束对待处理业务报文的处理。
其中,所述基础信息包括待处理业务报文的报文格式以及报文处理权限。
步骤306、判断对待处理业务报文的处理返回值是否为空。
若对待处理业务报文的处理返回值为空,表示对待处理业务报文的数据处理正常,执行步骤307;若对待处理业务报文的处理返回值不为空,表示对待处理业务报文的数据处理出现异常,执行步骤308。
步骤307、将当前线程数减1,以结束对待处理业务报文的处理。
步骤308、将待处理业务报文放入错误队列,将当前线程数减1,以结束对待处理业务报文的处理。
本发明实施例提供的一种支付***消息控制和处理方法在测试环境中可以具有每小时4万笔待处理业务报文的处理能力,可满足支付***中各种项目要求。本发明实施例提供的支付***消息控制和处理方法可以在包括tomcat在内的Java应用服务器上运行。
本发明实施例提供的一种支付***消息控制和处理方法,首先从支付***的消息中间件中轮询读取消息,获取待处理业务报文;判断当前线程数是否大于预先设置的最大线程数阈值;在当前线程数小于所述最大线程数阈值时,读取所述待处理业务报文,并确定待处理业务报文的类型;在待处理业务报文的类型满足预先设置的报文类型条件时,将待处理业务报文写入来报表;若将待处理业务报文写入来报表未出现异常,启动新线程,对待处理业务报文进行处理;若将待处理业务报文写入来报表出现异常,且同一待处理业务报文写入来报表出现异常的次数大于等于预先设置的异常次数阈值,则将待处理业务报文放入错误队列;若将待处理业务报文写入来报表出现异常,且同一待处理业务报文写入来报表出现异常的次数小于预先设置的异常次数阈值,则将该待处理业务报文写入来报表出现异常的次数增加1,并抛出该待处理业务报文写入来报表出现的异常,制造事务回滚使得待处理业务报文回到消息中间件的消息队列中。本发明对支付***消息的控制和处理可读取不同的消息中间件,不依赖任何特定的容器,可同时处理大量的待处理业务数据,解决了多用户客户端压力并发、大业务量后台压力并发问题,避免了现有技术中在不依赖容器的情况下,难以进行支付***消息控制和处理的问题。
对应于上述图1至图3所述的方法实施例,如图4所示,本发明实施例提供一种支付***消息控制和处理装置,包括:
轮询读取单元401,用于从支付***的消息中间件中轮询读取消息,获取待处理业务报文。
线程控制单元402,用于判断当前线程数是否大于预先设置的最大线程数阈值。
报文类型确定单元403,用于在当前线程数小于所述最大线程数阈值时,读取所述待处理业务报文,并确定待处理业务报文的类型。
来报表写入单元404,用于在待处理业务报文的类型满足预先设置的报文类型条件时,将待处理业务报文写入来报表。
待处理业务报文处理单元405,用于在将待处理业务报文写入来报表未出现异常时,启动新线程,对待处理业务报文进行处理。
异常处理单元406,用于在将待处理业务报文写入来报表出现异常,且同一待处理业务报文写入来报表出现异常的次数大于等于预先设置的异常次数阈值时,将待处理业务报文放入错误队列。
回滚单元407,用于在将待处理业务报文写入来报表出现异常,且同一待处理业务报文写入来报表出现异常的次数小于预先设置的异常次数阈值时,将该待处理业务报文写入来报表出现异常的次数增加1,并抛出该待处理业务报文写入来报表出现的异常,制造事务回滚使得待处理业务报文回到消息中间件的消息队列中。
进一步的,如图5所示,所述的支付***消息控制和处理装置,还包括:
失效标识生成单元408,用于在从支付***的消息中间件中轮询读取消息时,若所述消息中间件中没有待处理业务报文,且在一预设读取时长内未读取到消息中间件中的待处理业务报文时,则生成失效标识。
此外,所述来报表写入单元404,具体用于:
在待处理业务报文的类型为TextMessage格式类型或BytesMessage格式类型时,将待处理业务报文写入来报表。
进一步的,所述支付***消息控制和处理装置,还包括:
待处理业务报文删除单元409,用于在待处理业务报文的类型不为TextMessage格式类型和BytesMessage格式类型时,将待处理业务报文的类型记录于***异常日志中,并将所述待处理业务报文删除。
具体的,如图5所示,所述待处理业务报文处理单元405,包括:
报文业务号获取模块451,用于将当前线程数增加1,并从待处理业务报文中获取报文业务号。
业务处理策略获取模块452,用于根据所述报文业务号获取与所述报文业务号对应的业务处理策略。
待处理业务报文处理模块453,用于根据所述业务处理策略对待处理业务报文进行处理。
基础信息异常判断模块454,用于在对待处理业务报文进行处理后判断待处理业务报文的基础信息是否存在异常。
基础信息异常处理模块455,用于在待处理业务报文的基础信息存在异常时,将来报表中记录待处理业务报文处理次数设为1,并将当前线程数减1,以结束对待处理业务报文的处理;所述基础信息包括待处理业务报文的报文格式以及报文处理权限。
处理返回值判断模块456,用于在待处理业务报文的基础信息不存在异常时,判断对待处理业务报文的处理返回值是否为空。
所述待处理业务报文处理模块453,还用于在对待处理业务报文的处理返回值为空时,表示对待处理业务报文的数据处理正常,将当前线程数减1,以结束对待处理业务报文的处理;在对待处理业务报文的处理返回值不为空时,表示对待处理业务报文的数据处理出现异常,将待处理业务报文放入错误队列,将当前线程数减1,以结束对待处理业务报文的处理。
此外,所述待处理业务报文处理模块453,具体可以:
根据待处理业务报文进行消息中间件操作。
在进行消息中间件操作正常时,进行消息中间件提交。
在进行消息中间件操作出现异常时,进行消息中间件回滚,不进行消息中间件提交。
在进行消息中间件提交时出现异常时,进行消息中间件回滚,使得待处理业务报文回到消息中间件的消息队列中。
此外,所述待处理业务报文处理模块453,具体还用于:
根据待处理业务报文进行***数据库操作。
在进行***数据库操作正常时,进行***数据库提交。
在进行***数据库操作出现异常时,进行***数据库回滚,确定待处理业务报文入来报表失败,抛出进行***数据库操作异常,进行消息中间件回滚,使得待处理业务报文回到消息中间件的消息队列中。
在进行***数据库提交出现异常时,进行***数据库回滚,确定待处理业务报文入来报表失败,抛出进行***数据库操作异常,进行消息中间件回滚,使得待处理业务报文回到消息中间件的消息队列中。
进一步的,如图5所示,所述的支付***消息控制和处理装置,还包括:
防重账处理单元410,用于在从待处理业务报文中获取报文业务号之后,根据所述报文业务号确定待处理业务报文是否已经被处理;在待处理业务报文已经被处理时,将待处理业务报文删除。
本发明实施例提供的一种支付***消息控制和处理装置,首先从支付***的消息中间件中轮询读取消息,获取待处理业务报文;判断当前线程数是否大于预先设置的最大线程数阈值;在当前线程数小于所述最大线程数阈值时,读取所述待处理业务报文,并确定待处理业务报文的类型;在待处理业务报文的类型满足预先设置的报文类型条件时,将待处理业务报文写入来报表;若将待处理业务报文写入来报表未出现异常,启动新线程,对待处理业务报文进行处理;若将待处理业务报文写入来报表出现异常,且同一待处理业务报文写入来报表出现异常的次数大于等于预先设置的异常次数阈值,则将待处理业务报文放入错误队列;若将待处理业务报文写入来报表出现异常,且同一待处理业务报文写入来报表出现异常的次数小于预先设置的异常次数阈值,则将该待处理业务报文写入来报表出现异常的次数增加1,并抛出该待处理业务报文写入来报表出现的异常,制造事务回滚使得待处理业务报文回到消息中间件的消息队列中。本发明对支付***消息的控制和处理可读取不同的消息中间件,不依赖任何特定的容器,可同时处理大量的待处理业务数据,解决了多用户客户端压力并发、大业务量后台压力并发问题,避免了现有技术中在不依赖容器的情况下,难以进行支付***消息控制和处理的问题。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (14)

1.一种支付***消息控制和处理方法,其特征在于,包括:
从支付***的消息中间件中轮询读取消息,获取待处理业务报文;
判断当前线程数是否大于预先设置的最大线程数阈值;
在当前线程数小于所述最大线程数阈值时,读取所述待处理业务报文,并确定待处理业务报文的类型;
在待处理业务报文的类型满足预先设置的报文类型条件时,将待处理业务报文写入来报表,包括:在待处理业务报文的类型为TextMessage格式类型或BytesMessage格式类型时,将待处理业务报文写入来报表;
若将待处理业务报文写入来报表未出现异常,启动新线程,对待处理业务报文进行处理;
若将待处理业务报文写入来报表出现异常,且同一待处理业务报文写入来报表出现异常的次数大于等于预先设置的异常次数阈值,则将待处理业务报文放入错误队列;
若将待处理业务报文写入来报表出现异常,且同一待处理业务报文写入来报表出现异常的次数小于预先设置的异常次数阈值,则将该待处理业务报文写入来报表出现异常的次数增加1,并抛出该待处理业务报文写入来报表出现的异常,制造事务回滚使得待处理业务报文回到消息中间件的消息队列中。
2.根据权利要求1所述的支付***消息控制和处理方法,其特征在于,还包括:
在从支付***的消息中间件中轮询读取消息时,若所述消息中间件中没有待处理业务报文,且在一预设读取时长内未读取到消息中间件中的待处理业务报文,则生成失效标识。
3.根据权利要求1所述的支付***消息控制和处理方法,其特征在于,还包括:
在待处理业务报文的类型不为TextMessage格式类型和BytesMessage格式类型时,将待处理业务报文的类型记录于***异常日志中,并将所述待处理业务报文删除。
4.根据权利要求1所述的支付***消息控制和处理方法,其特征在于,所述启动新线程,对待处理业务报文进行处理,包括:
将当前线程数增加1,并从待处理业务报文中获取报文业务号;
根据所述报文业务号获取与所述报文业务号对应的业务处理策略;
根据所述业务处理策略对待处理业务报文进行处理;
在对待处理业务报文进行处理后判断待处理业务报文的基础信息是否存在异常;
若待处理业务报文的基础信息存在异常,将来报表中记录待处理业务报文处理次数设为1,并将当前线程数减1,以结束对待处理业务报文的处理;所述基础信息包括待处理业务报文的报文格式以及报文处理权限;
若待处理业务报文的基础信息不存在异常,判断对待处理业务报文的处理返回值是否为空;
若对待处理业务报文的处理返回值为空,表示对待处理业务报文的数据处理正常,将当前线程数减1,以结束对待处理业务报文的处理;
若对待处理业务报文的处理返回值不为空,表示对待处理业务报文的数据处理出现异常,将待处理业务报文放入错误队列,将当前线程数减1,以结束对待处理业务报文的处理。
5.根据权利要求4所述的支付***消息控制和处理方法,其特征在于,根据所述业务处理策略对待处理业务报文进行处理,包括:
根据待处理业务报文进行消息中间件操作;
若进行消息中间件操作正常,则进行消息中间件提交;
若进行消息中间件操作出现异常,则进行消息中间件回滚,不进行消息中间件提交;
若进行消息中间件提交时出现异常,则进行消息中间件回滚,使得待处理业务报文回到消息中间件的消息队列中。
6.根据权利要求5所述的支付***消息控制和处理方法,其特征在于,根据所述业务处理策略对待处理业务报文进行处理,还包括:
根据待处理业务报文进行***数据库操作;
若进行***数据库操作正常,则进行***数据库提交;
若进行***数据库操作出现异常,则进行***数据库回滚,确定待处理业务报文入来报表失败,抛出进行***数据库操作异常,进行消息中间件回滚,使得待处理业务报文回到消息中间件的消息队列中;
若进行***数据库提交出现异常,则进行***数据库回滚,确定待处理业务报文入来报表失败,抛出进行***数据库操作异常,进行消息中间件回滚,使得待处理业务报文回到消息中间件的消息队列中。
7.根据权利要求4所述的支付***消息控制和处理方法,其特征在于,还包括:
在从待处理业务报文中获取报文业务号之后,根据所述报文业务号确定待处理业务报文是否已经被处理;
若待处理业务报文已经被处理,则将待处理业务报文删除。
8.一种支付***消息控制和处理装置,其特征在于,包括:
轮询读取单元,用于从支付***的消息中间件中轮询读取消息,获取待处理业务报文;
线程控制单元,用于判断当前线程数是否大于预先设置的最大线程数阈值;
报文类型确定单元,用于在当前线程数小于所述最大线程数阈值时,读取所述待处理业务报文,并确定待处理业务报文的类型;
来报表写入单元,用于在待处理业务报文的类型满足预先设置的报文类型条件时,将待处理业务报文写入来报表,所述来报表写入单元,具体用于:在待处理业务报文的类型为TextMessage格式类型或BytesMessage格式类型时,将待处理业务报文写入来报表;
待处理业务报文处理单元,用于在将待处理业务报文写入来报表未出现异常时,启动新线程,对待处理业务报文进行处理;
异常处理单元,用于在将待处理业务报文写入来报表出现异常,且同一待处理业务报文写入来报表出现异常的次数大于等于预先设置的异常次数阈值时,将待处理业务报文放入错误队列;
回滚单元,用于在将待处理业务报文写入来报表出现异常,且同一待处理业务报文写入来报表出现异常的次数小于预先设置的异常次数阈值时,将该待处理业务报文写入来报表出现异常的次数增加1,并抛出该待处理业务报文写入来报表出现的异常,制造事务回滚使得待处理业务报文回到消息中间件的消息队列中。
9.根据权利要求8所述的支付***消息控制和处理装置,其特征在于,还包括:
失效标识生成单元,用于在从支付***的消息中间件中轮询读取消息时,若所述消息中间件中没有待处理业务报文,且在一预设读取时长内未读取到消息中间件中的待处理业务报文时,则生成失效标识。
10.根据权利要求8所述的支付***消息控制和处理装置,其特征在于,还包括:
待处理业务报文删除单元,用于在待处理业务报文的类型不为TextMessage格式类型和BytesMessage格式类型时,将待处理业务报文的类型记录于***异常日志中,并将所述待处理业务报文删除。
11.根据权利要求8所述的支付***消息控制和处理装置,其特征在于,所述待处理业务报文处理单元,包括:
报文业务号获取模块,用于将当前线程数增加1,并从待处理业务报文中获取报文业务号;
业务处理策略获取模块,用于根据所述报文业务号获取与所述报文业务号对应的业务处理策略;
待处理业务报文处理模块,用于根据所述业务处理策略对待处理业务报文进行处理;
基础信息异常判断模块,用于在对待处理业务报文进行处理后判断待处理业务报文的基础信息是否存在异常;
基础信息异常处理模块,用于在待处理业务报文的基础信息存在异常时,将来报表中记录待处理业务报文处理次数设为1,并将当前线程数减1,以结束对待处理业务报文的处理;所述基础信息包括待处理业务报文的报文格式以及报文处理权限;
处理返回值判断模块,用于在待处理业务报文的基础信息不存在异常时,判断对待处理业务报文的处理返回值是否为空;
所述待处理业务报文处理模块,还用于在对待处理业务报文的处理返回值为空时,表示对待处理业务报文的数据处理正常,将当前线程数减1,以结束对待处理业务报文的处理;在对待处理业务报文的处理返回值不为空时,表示对待处理业务报文的数据处理出现异常,将待处理业务报文放入错误队列,将当前线程数减1,以结束对待处理业务报文的处理。
12.根据权利要求11所述的支付***消息控制和处理装置,其特征在于,所述待处理业务报文处理模块,具体用于:
根据待处理业务报文进行消息中间件操作;
在进行消息中间件操作正常时,进行消息中间件提交;
在进行消息中间件操作出现异常时,进行消息中间件回滚,不进行消息中间件提交;
在进行消息中间件提交时出现异常时,进行消息中间件回滚,使得待处理业务报文回到消息中间件的消息队列中。
13.根据权利要求12所述的支付***消息控制和处理装置,其特征在于,所述待处理业务报文处理模块,具体还用于:
根据待处理业务报文进行***数据库操作;
在进行***数据库操作正常时,进行***数据库提交;
在进行***数据库操作出现异常时,进行***数据库回滚,确定待处理业务报文入来报表失败,抛出进行***数据库操作异常,进行消息中间件回滚,使得待处理业务报文回到消息中间件的消息队列中;
在进行***数据库提交出现异常时,进行***数据库回滚,确定待处理业务报文入来报表失败,抛出进行***数据库操作异常,进行消息中间件回滚,使得待处理业务报文回到消息中间件的消息队列中。
14.根据权利要求11所述的支付***消息控制和处理装置,其特征在于,还包括:
防重账处理单元,用于在从待处理业务报文中获取报文业务号之后,根据所述报文业务号确定待处理业务报文是否已经被处理;在待处理业务报文已经被处理时,将待处理业务报文删除。
CN201710152341.4A 2017-03-15 2017-03-15 支付***消息控制和处理方法、装置 Active CN106970846B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710152341.4A CN106970846B (zh) 2017-03-15 2017-03-15 支付***消息控制和处理方法、装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710152341.4A CN106970846B (zh) 2017-03-15 2017-03-15 支付***消息控制和处理方法、装置

Publications (2)

Publication Number Publication Date
CN106970846A CN106970846A (zh) 2017-07-21
CN106970846B true CN106970846B (zh) 2019-08-16

Family

ID=59329286

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710152341.4A Active CN106970846B (zh) 2017-03-15 2017-03-15 支付***消息控制和处理方法、装置

Country Status (1)

Country Link
CN (1) CN106970846B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109446183B (zh) * 2017-08-31 2022-04-26 北京京东尚科信息技术有限公司 全局防重的方法和装置
CN107483635A (zh) * 2017-09-22 2017-12-15 浪潮软件集团有限公司 一种业务请求处理方法、处理***及消息中间件
CN109672627A (zh) * 2018-09-26 2019-04-23 深圳壹账通智能科技有限公司 基于集群服务器的业务处理方法、平台、设备及存储介质
CN110955532A (zh) * 2018-09-27 2020-04-03 北京国双科技有限公司 消息处理方法、装置及计算机设备
CN109408203B (zh) * 2018-11-01 2019-10-18 无锡华云数据技术服务有限公司 一种队列消息一致性的实现方法、装置、计算***
CN111222862A (zh) * 2018-11-27 2020-06-02 北京京东金融科技控股有限公司 数据处理方法及***、介质和计算机***
CN110347533A (zh) * 2019-07-11 2019-10-18 中国工商银行股份有限公司 数据异常的处理方法、装置、计算设备及介质
CN111651284B (zh) * 2020-05-25 2024-06-28 泰康保险集团股份有限公司 一种处理业务数据的方法、装置、***及存储介质
CN114157468B (zh) * 2021-11-26 2024-03-12 跨境银行间支付清算有限责任公司 一种跨境支付报文传输方法及装置
CN114119019B (zh) * 2021-11-26 2024-03-12 跨境银行间支付清算有限责任公司 基于跨境支付***的多渠道接入方法及装置
CN114567674B (zh) * 2022-02-25 2024-03-15 腾讯科技(深圳)有限公司 一种数据处理方法、装置、计算机设备以及可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102306197B (zh) * 2011-09-22 2013-07-03 用友软件股份有限公司 保证跨数据源操作结果一致性的装置和方法
CN104715363A (zh) * 2013-12-13 2015-06-17 中兴通讯股份有限公司 支付处理方法及装置
KR20160043556A (ko) * 2014-10-13 2016-04-22 주식회사 비디 모바일 결제 방법, 이를 수행하는 모바일 결제 단말, 이를 수행하도록 하는 결제 서버 및 이를 저장하는 기록매체
CN103200039B (zh) * 2012-01-09 2017-01-18 阿里巴巴集团控股有限公司 数据监控方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102306197B (zh) * 2011-09-22 2013-07-03 用友软件股份有限公司 保证跨数据源操作结果一致性的装置和方法
CN103200039B (zh) * 2012-01-09 2017-01-18 阿里巴巴集团控股有限公司 数据监控方法及装置
CN104715363A (zh) * 2013-12-13 2015-06-17 中兴通讯股份有限公司 支付处理方法及装置
KR20160043556A (ko) * 2014-10-13 2016-04-22 주식회사 비디 모바일 결제 방법, 이를 수행하는 모바일 결제 단말, 이를 수행하도록 하는 결제 서버 및 이를 저장하는 기록매체

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
支付信息统计***的设计与实现;周利峰;《中国优秀硕士学位论文全文数据库信息科技辑(月刊)》;20160515(第05期);I138-247

Also Published As

Publication number Publication date
CN106970846A (zh) 2017-07-21

Similar Documents

Publication Publication Date Title
CN106970846B (zh) 支付***消息控制和处理方法、装置
US20180285844A1 (en) Automated teller machine transaction premium listing to prevent transaction blocking
CN106952158A (zh) 解决热点账户问题的记账方法及设备
US8316373B2 (en) Concurrent data processing and electronic bookkeeping
US8266058B1 (en) Virtual accounts linked to financial accounts
CN103677771B (zh) 一种并发事务的处理方法和装置
CN101727712B (zh) 一种电子现金的转账方法
CN101496056A (zh) 用于监控交易的***和方法
CN110246014A (zh) 账单核销调度方法、装置及服务器
CN111047310A (zh) 数字资产的发行和转让、在线融资的实现方法和装置
CN110717820A (zh) 基于区块链的资产清偿方法及装置、电子设备
CN108537520A (zh) 一种接入第三方支付交易的方法和装置
CN103326950B (zh) 一种银行卡数据流量控制方法及***
CN106021597A (zh) 用于账务交易的数据表更新的方法及***
CN112449021B (zh) 一种互联网资源的筛选方法及装置
WO2014150391A1 (en) Systems and methods for processing payment card transactions
CN111383118A (zh) 基于区块链的资产管理方法、装置和电子设备
CN110276685A (zh) 票据交易行情推送方法及装置
US20170017953A1 (en) Systems and methods for transferring balances
CN111260272A (zh) 基于库存响应用户请求的方法、装置、设备及存储介质
US20180039984A1 (en) Systems and methods for locally processing a financial transaction
CN107357679A (zh) 一种备份方法和装置
CN107862605A (zh) 资产转让处理方法、***及计算机可读存储介质
WO2016168509A1 (en) Fund recovery method and apparatus
CN106899521A (zh) 互联网资源调度方法及装置、担保方法及装置

Legal Events

Date Code Title Description
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 100195 1st Floor 112-113, Building 3, South District, Beiwu Innovation Park, 23 Beiwucun Road, Haidian District, Beijing

Applicant after: Yinqing Science and Technology (Beijing) Co., Ltd.

Address before: Room 510, 5th floor, C Block, Jiahao International Center, 116 Zizhuyuan Road, Haidian District, Beijing, 100097

Applicant before: Beijing gallop Information Engineering Co., Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder

Address after: 100195 1st Floor 112-113, Building 3, South District, Beiwu Innovation Park, 23 Beiwucun Road, Haidian District, Beijing

Patentee after: Yinqing Technology Co., Ltd

Address before: 100195 1st Floor 112-113, Building 3, South District, Beiwu Innovation Park, 23 Beiwucun Road, Haidian District, Beijing

Patentee before: YINQING TECHNOLOGY (BEIJING) Co.,Ltd.

CP01 Change in the name or title of a patent holder