CN114244829B - 一种基于拦截器的交易带附件双轨并行处理方法及系统 - Google Patents

一种基于拦截器的交易带附件双轨并行处理方法及系统 Download PDF

Info

Publication number
CN114244829B
CN114244829B CN202111526521.7A CN202111526521A CN114244829B CN 114244829 B CN114244829 B CN 114244829B CN 202111526521 A CN202111526521 A CN 202111526521A CN 114244829 B CN114244829 B CN 114244829B
Authority
CN
China
Prior art keywords
transaction
information
file
accessory
judging whether
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
CN202111526521.7A
Other languages
English (en)
Other versions
CN114244829A (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 Construction Bank Corp
Original Assignee
China Construction Bank Corp
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 Construction Bank Corp filed Critical China Construction Bank Corp
Priority to CN202111526521.7A priority Critical patent/CN114244829B/zh
Publication of CN114244829A publication Critical patent/CN114244829A/zh
Application granted granted Critical
Publication of CN114244829B publication Critical patent/CN114244829B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • 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/547Remote procedure calls [RPC]; Web services
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Physics & Mathematics (AREA)
  • Finance (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Accounting & Taxation (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • General Engineering & Computer Science (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Technology Law (AREA)
  • General Business, Economics & Management (AREA)
  • Hardware Redundancy (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种基于拦截器的交易带附件双轨并行处理方法及系统,涉及数据处理领域。其中,所述方法包括:获取客户信息;判断客户信息是否在白名单中,若在白名单中,转发到新系统执行,并获取响应报文;判断是否为带附件交易;若为带附件交易,获取交易状态信息;判断交易是否执行成功;若执行成功,获取文件路径及文件名称;判断是否配置文件传输服务器地址;如果已配置文件传输服务器地址,获取服务器IP和端口信息;将附件从新系统传输到老系统。解决了现有技术中存在由于新老系统可能在不同地域、不同机房,出于安全性考虑可能不允许跨机房挂载同一块NAS,因此在金融系统中面临跨机房、跨网段以及相关流程限制的技术问题。

Description

一种基于拦截器的交易带附件双轨并行处理方法及系统
技术领域
本发明涉及数据处理领域,可应用于金融信息系统,具体涉及一种基于拦截器的交易带附件双轨并行处理方法及系统。
背景技术
金融系统在国计民生中占有重要地位。由于科技的日益发展,金融信息系统中往往需要引入多种技术。出于安全及稳定性考虑,通常会保持双轨并行,也就是两套技术和系统同时对外提供服务。交易带附件是金融交易的一种常见形式,可对外提供文件服务,可供用户进行下载及其他操作。在双轨并行系统中,需要保证用户可以正常传输和下载附件,同时不引起数据错乱和冲突。在双轨并行系统中,可通过共享NAS的方式提供文件服务,也就是说在新系统和老系统中只保留一份文件副本,在新老系统中均可访问相关文件。NAS(Network Attached Storage)网络存储基于标准网络协议实现数据传输,为网络中的Windows、Linux、MacOS等各种不同操作系统的计算机提供文件共享和数据备份服务。但是,在实际中,新老系统可能在不同地域、不同机房。由于安全性等要求,可能不允许跨机房挂载同一块NAS,具有一定的局限性。
在软件行业,AOP(Aspect Oriented Programming)意为面向切面的编程,通过预编译方式和运行期间动态代理实现程序功能统一维护的一种技术。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提供程序的可重用性,同时提高了开发效率。拦截器是AOP编程思想中的一种策略,用于访问某个方法时,在访问前或访问后执行一些操作。它提供了一种机制可以使开发者定义在一个action执行的前后执行的代码,也可以在一个action执行前阻止其操作,同时提供了一种可以提取action中可重用部分的方式。
现有技术中,存在由于新老系统可能在不同地域、不同机房,出于安全性考虑可能不允许跨机房挂载同一块NAS,因此在金融系统中面临跨机房、跨网段以及相关流程限制的问题。
发明内容
本申请实施例通过提供了一种基于拦截器的交易带附件双轨并行处理方法及系统,解决了现有技术中存在由于新老系统可能在不同地域、不同机房,出于安全性考虑可能不允许跨机房挂载同一块NAS,因此在金融系统中面临跨机房、跨网段以及相关流程限制的技术问题。达到了通过自定义拦截器降低了对应用系统的耦合,同时可有效规避不同机房、不同网段之间不能挂载同一NAS的限制的技术效果。
鉴于上述问题,本申请实施例提供了一种基于拦截器的交易带附件双轨并行处理方法及系统。
第一方面,本申请实施例提供了一种基于拦截器的交易带附件双轨并行处理方法,所述方法包括:从交易报文中根据分片键获取客户信息;判断所述客户信息是否在白名单中;如果所述客户信息在所述白名单中,将交易转发到新系统执行,并获取响应报文;判断所述交易是否为带附件交易;如果所述交易为带附件交易,从所述响应报文中获取交易状态信息;根据所述交易状态信息,判断所述交易是否执行成功;如果所述交易执行成功,从报文COM域中获取对应的文件路径及文件名称;根据所述对应的文件路径及文件名称,判断是否配置文件传输服务器地址;如果已配置所述文件传输服务器地址,获取所述服务器IP和端口信息;根据所述服务器IP和端口信息,通过调用文件传输客户端API将附件从所述新系统传输到老系统。
另一方面,本申请实施例提供了一种基于拦截器的交易带附件双轨并行处理系统,所述系统包括:第一获得单元,所述第一获得单元用于从交易报文中根据分片键获取客户信息;第一判断单元,所述第一判断单元用于判断所述客户信息是否在白名单中;第二获得单元,所述第二获得单元用于如果所述客户信息在所述白名单中,将交易转发到新系统执行,并获取响应报文;第二判断单元,所述第二判断单元用于判断所述交易是否为带附件交易;第三获得单元,所述第三获得单元用于如果所述交易为带附件交易,从所述响应报文中获取交易状态信息;第三判断单元,所述第三判断单元用于根据所述交易状态信息,判断所述交易是否执行成功;第四获得单元,所述第四获得单元用于如果所述交易执行成功,从报文COM域中获取对应的文件路径及文件名称;第四判断单元,所述第四判断单元用于根据所述对应的文件路径及文件名称,判断是否配置文件传输服务器地址;第五获得单元,所述第五获得单元用于如果已配置所述文件传输服务器地址,获取所述服务器IP和端口信息;第一执行单元,所述第一执行单元用于根据所述服务器IP和端口信息,通过调用文件传输客户端API将附件从所述新系统传输到老系统。
第三方面,本发明提供了一种基于拦截器的交易带附件双轨并行处理系统,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现第一方面所述方法的步骤。
本申请实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
1、由于采用了从交易报文中根据分片键获取客户信息;判断所述客户信息是否在白名单中;如果所述客户信息在所述白名单中,将交易转发到新系统执行,并获取响应报文;判断所述交易是否为带附件交易;如果所述交易为带附件交易,从所述响应报文中获取交易状态信息;根据所述交易状态信息,判断所述交易是否执行成功;如果所述交易执行成功,从报文COM域中获取对应的文件路径及文件名称;根据所述对应的文件路径及文件名称,判断是否配置文件传输服务器地址;如果已配置所述文件传输服务器地址,获取所述服务器IP和端口信息;根据所述服务器IP和端口信息,通过调用文件传输客户端API将附件从所述新系统传输到老系统的技术方案,本申请实施例通过提供了一种基于拦截器的交易带附件双轨并行处理方法及系统,达到了通过自定义拦截器降低了对应用系统的耦合,同时可有效规避不同机房、不同网段之间不能挂载同一NAS的限制的技术效果。
2、由于采用了配置失败重试次数的方法,在失败重试次数范围内,若传输失败则继续执行文件传输操作,实现了文件传输的失败重试机制,同时文件传输服务器基于集群部署,达到了有效避免了单点故障的技术效果。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
图1为本申请实施例一种基于拦截器的交易带附件双轨并行处理方法的流程示意图;
图2为本申请实施例一种基于拦截器的交易带附件双轨并行处理方法的判断交易是否为带附件交易的流程示意图;
图3为本申请实施例一种基于拦截器的交易带附件双轨并行处理系统的结构示意图;
图4为本申请实施例示例性电子设备的结构示意图。
附图标记说明:第一获得单元11,第一判断单元12,第二获得单元13,第二判断单元14,第三获得单元15,第三判断单元16,第四获得单元17,第四判断单元18,第五获得单元19,第一执行单元20,电子设备300,存储器301,处理器302,通信接口303,总线架构304。
具体实施方式
本申请实施例通过提供了一种基于拦截器的交易带附件双轨并行处理方法及系统,解决了现有技术中存在由于新老系统可能在不同地域、不同机房,出于安全性考虑可能不允许跨机房挂载同一块NAS,因此在金融系统中面临跨机房、跨网段以及相关流程限制的技术问题。达到了通过自定义拦截器降低了对应用系统的耦合,同时可有效规避不同机房、不同网段之间不能挂载同一NAS的限制的技术效果。
本申请技术方案中对数据的获取、存储、使用、处理等均符合国家法律法规的相关规定。在双轨并行系统中,可通过共享NAS的方式提供文件服务,也就是说在新系统和老系统中只保留一份文件副本,在新老系统中均可访问相关文件。NAS(Network AttachedStorage)网络存储基于标准网络协议实现数据传输,为网络中的Windows、Linux、MacOS等各种不同操作系统的计算机提供文件共享和数据备份服务。但是,在实际中,新老系统可能在不同地域、不同机房。由于安全性等要求,可能不允许跨机房挂载同一块NAS,具有一定的局限性。现有技术中存在由于新老系统可能在不同地域、不同机房,出于安全性考虑可能不允许跨机房挂载同一块NAS,因此在金融系统中面临跨机房、跨网段以及相关流程限制的技术问题。
针对上述技术问题,本申请提供的技术方案总体思路如下:
本申请实施例提供了一种基于拦截器的交易带附件双轨并行处理方法,所述方法包括:从交易报文中根据分片键获取客户信息;判断所述客户信息是否在白名单中;如果所述客户信息在所述白名单中,将交易转发到新系统执行,并获取响应报文;判断所述交易是否为带附件交易;如果所述交易为带附件交易,从所述响应报文中获取交易状态信息;根据所述交易状态信息,判断所述交易是否执行成功;如果所述交易执行成功,从报文COM域中获取对应的文件路径及文件名称;根据所述对应的文件路径及文件名称,判断是否配置文件传输服务器地址;如果已配置所述文件传输服务器地址,获取所述服务器IP和端口信息;根据所述服务器IP和端口信息,通过调用文件传输客户端API将附件从所述新系统传输到老系统。
在介绍了本申请基本原理后,下面将结合说明书附图来具体介绍本申请的各种非限制性的实施方式。
实施例一
如图1所示,本申请实施例提供了一种基于拦截器的交易带附件双轨并行处理方法,其中,所述方法包括:
S100:从交易报文中根据分片键获取客户信息;
具体而言,金融系统在国计民生中占有重要地位。由于科技的日益发展,金融信息系统中往往需要引入多种技术。出于安全及稳定性考虑,通常会保持双轨并行,也就是两套技术和系统同时对外提供服务。其中两套系统为老系统和新系统,例如:在进行金融系统的国产化改造时,会同时有老的X86系统和新的国产化系统。报文是网络中交换与传输的数据单元,即站点一次性要发送的数据块。报文包含了将要发送的完整的数据信息,其长短不一致,长度不限且可变。分片键用于确定集合文档在集群分片中的分布。将交易报文根据分片键分片,分片的具体方式可以是但不限于Hash分片,一致性Hash分片和按照数据范围分片等。
经过交易报文的分片,从传入的交易报文中获取客户信息,所述客户信息为客户的客户号,而不是客户的卡号、账号等信息。客户号可以理解为在交易过程中用于标识客户身份的号码,例如:XX银行的客户号是根据客户身份证号码在XX银行系统内生成的一个号码,对XX银行来说这个号码每个客户只有一个,利用这个号码可以查到此客户名下所有的XX银行户头,XX银行识别客户就是用这个号码,客户号就像是客户在XX银行的另一个虚幻的身份证。
需要说明的是,对于客户数据的获取、存储、使用、处理等均符合国家法律法规的相关规定,并且经过客户的同意。
S200:判断所述客户信息是否在白名单中;
S300:如果所述客户信息在所述白名单中,将交易转发到新系统执行,并获取响应报文;
进一步的,所述判断所述客户信息是否在白名单中之后,步骤S200包括:
S210:如果所述客户信息不在所述白名单中,在所述老系统中执行原有交易逻辑。
具体而言,在本发明所提出的机制中,所有交易会先进入老系统,根据是否为白名单客户判断是否需要进行转发。因此只需在老系统的配置文件中配置带附件交易对应的拦截器即可,在新系统中无需配置。白名单的概念与“黑名单”相对应。例如:在电脑系统里,有很多软件都应用到了黑白名单规则,操作系统、防火墙、杀毒软件、邮件系统、应用软件等,凡是涉及到控制方面几乎都应用了黑白名单规则。为了提升白名单查询的性能,可将白名单存储在Redis、Cassandra等NOSQL内存数据库中。基于客户维度和白名单机制对交易进行拆分,也就是说在白名单中的客户会路由到新系统,不在白名单中的客户会路由到老系统。
判断客户号是否在白名单缓存中,如果不在白名单缓存中,则按照老系统原有逻辑和处理栈执行即可。如果在白名单缓存中,则获取对应交易在新系统中的访问地址,并根据路由算法转发到新系统中的某台机器进行处理。在新系统中处理完交易逻辑后获取响应报文并将响应报文返回到老系统。
S400:判断所述交易是否为带附件交易;
S500:如果所述交易为带附件交易,从所述响应报文中获取交易状态信息;
进一步的,如图2所示,所述判断所述交易是否为带附件交易,步骤S400还包括:
S410:判断List中是否包含对应交易号;
S420:如果所述List中包含所述对应交易号,确定所述交易为带附件交易;
S430:如果所述List中不包含所述对应交易号,确定所述交易为不带附件交易。
具体而言,交易带附件是金融交易的一种常见形式,可提供文件传输及下载等功能。判断交易是否为带附件交易。带附件交易的交易号会在配置文件中进行配置,并在系统启动后加载到内存中,以List形式进行存储。通过判断该List中是否包含对应交易号可判断是否为带附件交易,如果所述List中包含所述对应交易号,确定所述交易为带附件交易,如果所述List中不包含所述对应交易号,确定所述交易为不带附件交易。如果所述交易为带附件交易,从所述响应报文中获取交易状态信息,如果不是带附件交易,则直接返回响应报文。
S600:根据所述交易状态信息,判断所述交易是否执行成功;
S700:如果所述交易执行成功,从报文COM域中获取对应的文件路径及文件名称;
具体而言,从响应报文中获取交易状态信息。判断所述交易是否执行成功,如果状态为失败,表明在新系统中执行失败,此时直接返回响应信息即可。如果状态为成功,则从报文COM域中获取对应的文件路径及文件名称。文件路径是文件夹的形式,如果不存在,则在老系统中创建对应文件夹。将文件路径和文件名称拼装为完整的文件路径。
S800:根据所述对应的文件路径及文件名称,判断是否配置文件传输服务器地址;
S900:如果已配置所述文件传输服务器地址,获取所述服务器IP和端口信息;
进一步的,所述判断是否配置文件传输服务器地址之后,步骤S800包括:
S810:如果未配置所述文件传输服务器地址,在注册中心注册所述新系统的交易并启动文件传输服务,从所述注册中心根据负载均衡策略获取对应组件的所述文件传输服务器地址。
具体而言,在配置文件中配置文件传输服务器的地址或交易带附件对应的组件编号。如果为组件方式,需要将该组件在配置中心进行注册。通过组件方式获取文件传输服务器地址的好处是可以根据需要灵活增加或移除文件传输服务器,而不必修改配置文件,同时也可利用配置中心自有的负载均衡机制获取对应组件的所述文件传输服务器地址,负载均衡策略可基于轮询、随机、一致性哈希等算法来实现。根据从报文COM域中获取对应的文件路径及文件名称,判断是否配置文件传输服务器地址,如果未配置,则从注册中心根据负载均衡策略获取对应组件的文件传输服务器地址。前提是需要在注册中心注册新系统的交易并启动文件传输服务。文件传输应用程序遵循TCP/IP协议组中的文件传输协议,它允许用户将文件从一台计算机传输到另一台计算机。文件传输服务以集群方式部署,并在配置中心注册。单台文件传输节点的宕机不会导致整个文件传输服务的不可用,满足了服务的高可用,同时降低了单台文件传输服务器的压力。可使用zookeeper作为文件传输服务器的注册中心。zookeeper是一个分布式的、开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。如果配置文件中已配置文件传输服务器的地址,则从配置文件读取具体的IP和端口列表,并根据负载均衡策略获取其中的对应组件的文件传输服务器地址。达到了同时支持组件方式和配置方式获取文件传输服务器地址的技术效果。
S1000:根据所述服务器IP和端口信息,通过调用文件传输客户端API将附件从所述新系统传输到老系统。
具体而言,获取到对应文件传输服务器IP和端口信息后,通过调用文件传输客户端API将附件从新系统传输到老系统。文件传输可支持双向传输,即从新系统向老系统上传以及从老系统向新系统下载。基于拦截器方式实现交易带附件新老系统并行,降低了对应用系统的耦合性。可有效规避不同机房、不同网段之间不能挂载同一NAS的限制。交易带附件交易双轨并行机制对于应用来说时无侵入的。对于路由到老系统的交易,采用原有执行逻辑即可。而路由到新系统的交易,只需要将文件由新系统传输到老系统。对于前端来说,调用时总是会从老系统的NAS中获取文件,新老系统使用不同的NAS挂载文件,但对外暴露的文件路径是一样的。这种实现方案在新系统和老系统中都会保留文件的副本。由于带附件交易本身的并发量不高,对系统性能造成的影响是可忽略的。
进一步的,所述从交易报文中根据分片键获取客户信息,步骤S100包括:
S110:判断传入信息是否为客户信息;
S120:如果所述传入信息不是所述客户信息,从卡账客路由索引中获取对应的所述客户信息。
具体而言,从交易报文中根据分片键获取客户信息,所述客户信息为客户号,判断传入信息是否为客户号,若所述传入信息不是所述客户信息,而是卡号、账号等信息,那么从卡账客路由索引中获取对应的所述客户信息。其中卡账客路由索引通过Cassandra来进行存储。Cassandra是一个高度可扩展的高性能分布式数据库,用于处理大量商用服务器上的大量数据,能够提供高可用性,无单点故障。
进一步的,所述如果所述客户信息在所述白名单中,将交易转发到新系统执行,并获取响应报文,步骤S300还包括:
S310:获取对应交易在新系统中的访问地址;
S320:根据路由算法转发到所述新系统中进行处理,在所述新系统中处理完交易逻辑后,将所述响应报文返回到所述老系统。
具体而言,如果所述客户信息在所述白名单缓存中,则获取对应交易在新系统中的访问地址,并根据路由算法转发到新系统中的某台机器进行处理。路由算法是提高路由协议功能,尽量减少路由时所带来开销的算法。在新系统中处理完交易逻辑后获取响应报文并将响应报文返回到老系统。
进一步的,所述根据所述服务器IP和端口信息,通过调用文件传输客户端API将附件从所述新系统传输到老系统之后,步骤S1000还包括:
S1100:判断调用文件传输客户端API将附件从所述新系统传输到所述老系统的传输过程是否成功;
S1200:如果不成功,将所述报文状态信息调整为失败,设置错误码和错误描述信息。
进一步的,所述如果不成功,将所述报文状态信息调整为失败,设置错误码和错误描述信息之前,步骤S1200还包括:
S1210:设置失败重试次数阈值;
S1220:在所述失败重试次数阈值内,如果所述传输过程失败,则继续执行所述传输过程的传输操作。
具体而言,通过调用文件传输客户端API将附件从新系统传输到老系统。如果文件传输成功,则直接返回响应报文。考虑到网络异常等场景,在传输过程中需要实现失败重试机制。失败重试次数是可配置的。在失败重试次数范围内,如果附件从所述新系统传输到所述老系统的传输过程失败,则继续执行文件传输操作。如果传输失败,由于新系统响应报文是成功状态,需要将响应报文的状态由成功变为失败,在错误描述中提示文件传输失败。需要在应用中对该错误信息的错误码和错误描述信息进行配置注册。实现了文件传输的失败重试机制,且失败重试次数可配置。
实施例二
基于与前述实施例中一种基于拦截器的交易带附件双轨并行处理方法相同的发明构思,如图3所示,本申请实施例提供了一种基于拦截器的交易带附件双轨并行处理系统,其中,所述系统包括:
第一获得单元11,所述第一获得单元11用于从交易报文中根据分片键获取客户信息;
第一判断单元12,所述第一判断单元12用于判断所述客户信息是否在白名单中;
第二获得单元13,所述第二获得单元13用于如果所述客户信息在所述白名单中,将交易转发到新系统执行,并获取响应报文;
第二判断单元14,所述第二判断单元14用于判断所述交易是否为带附件交易;
第三获得单元15,所述第三获得单元15用于如果所述交易为带附件交易,从所述响应报文中获取交易状态信息;
第三判断单元16,所述第三判断单元16用于根据所述交易状态信息,判断所述交易是否执行成功;
第四获得单元17,所述第四获得单元17用于如果所述交易执行成功,从报文COM域中获取对应的文件路径及文件名称;
第四判断单元18,所述第四判断单元18用于根据所述对应的文件路径及文件名称,判断是否配置文件传输服务器地址;
第五获得单元19,所述第五获得单元19用于如果已配置所述文件传输服务器地址,获取所述服务器IP和端口信息;
第一执行单元20,所述第一执行单元20用于根据所述服务器IP和端口信息,通过调用文件传输客户端API将附件从所述新系统传输到老系统。
进一步的,所述系统包括:
第五判断单元,所述第五判断单元用于判断传入信息是否为客户信息;
第六获得单元,所述第六获得单元用于如果所述传入信息不是所述客户信息,从卡账客路由索引中获取对应的所述客户信息。
进一步的,所述系统包括:
第七获得单元,所述第七获得单元用于获取对应交易在新系统中的访问地址;
第二执行单元,所述第二执行单元用于根据路由算法转发到所述新系统中进行处理,在所述新系统中处理完交易逻辑后,将所述响应报文返回到所述老系统。
进一步的,所述系统包括:
第三执行单元,所述第三执行单元用于如果所述客户信息不在所述白名单中,在所述老系统中执行原有交易逻辑。
进一步的,所述系统包括:
第六判断单元,所述第六判断单元用于判断List中是否包含对应交易号;
第四执行单元,所述第四执行单元用于如果所述List中包含所述对应交易号,确定所述交易为带附件交易;
第五执行单元,所述第五执行单元用于如果所述List中不包含所述对应交易号,确定所述交易为不带附件交易。
进一步的,所述系统包括:
第八获得单元,所述第八获得单元用于如果未配置所述文件传输服务器地址,在注册中心注册所述新系统的交易并启动文件传输服务,从所述注册中心根据负载均衡策略获取对应组件的所述文件传输服务器地址。
进一步的,所述系统包括:
第七判断单元,所述第七判断单元用于判断调用文件传输客户端API将附件从所述新系统传输到所述老系统的传输过程是否成功;
第六执行单元,所述第六执行单元用于如果不成功,将所述报文状态信息调整为失败,设置错误码和错误描述信息。
进一步的,所述系统包括:
第七执行单元,所述第七执行单元用于设置失败重试次数阈值;
第八执行单元,所述第八执行单元用于在所述失败重试次数阈值内,如果所述传输过程失败,则继续执行所述传输过程的传输操作。
示例性电子设备
下面参考图4来描述本申请实施例的电子设备。
基于与前述实施例中一种基于拦截器的交易带附件双轨并行处理方法相同的发明构思,本申请实施例还提供了一种基于拦截器的交易带附件双轨并行处理系统,包括:处理器,所述处理器与存储器耦合,所述存储器用于存储程序,当所述程序被所述处理器执行时,使得系统以执行第一方面任一项所述的方法。
该电子设备300包括:处理器302、通信接口303、存储器301。可选的,电子设备300还可以包括总线架构304。其中,通信接口303、处理器302以及存储器301可以通过总线架构304相互连接;总线架构304可以是外设部件互连标(peripheral componentinterconnect,简称PCI)总线或扩展工业标准结构(extended industry Standardarchitecture,简称EISA)总线等。所述总线架构304可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
处理器302可以是一个CPU,微处理器,ASIC,或一个或多个用于控制本申请方案程序执行的集成电路。
通信接口303,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如以太网,无线接入网(radio access network,RAN),无线局域网(wireless local areanetworks,WLAN),有线接入网等。
存储器301可以是ROM或可存储静态信息和指令的其他类型的静态存储设备,RAM或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable Programmable read-only memory,EEPROM)、只读光盘(compactdiscread-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过总线架构304与处理器相连接。存储器也可以和处理器集成在一起。
其中,存储器301用于存储执行本申请方案的计算机执行指令,并由处理器302来控制执行。处理器302用于执行存储器301中存储的计算机执行指令,从而实现本申请上述实施例提供的一种基于拦截器的交易带附件双轨并行处理方法。
可选的,本申请实施例中的计算机执行指令也可以称之为应用程序代码,本申请实施例对此不作具体限定。
本申请实施例提供了一种基于拦截器的交易带附件双轨并行处理方法,其中,所述方法包括:从交易报文中根据分片键获取客户信息;判断所述客户信息是否在白名单中;如果所述客户信息在所述白名单中,将交易转发到新系统执行,并获取响应报文;判断所述交易是否为带附件交易;如果所述交易为带附件交易,从所述响应报文中获取交易状态信息;根据所述交易状态信息,判断所述交易是否执行成功;如果所述交易执行成功,从报文COM域中获取对应的文件路径及文件名称;根据所述对应的文件路径及文件名称,判断是否配置文件传输服务器地址;如果已配置所述文件传输服务器地址,获取所述服务器IP和端口信息;根据所述服务器IP和端口信息,通过调用文件传输客户端API将附件从所述新系统传输到老系统。
本领域普通技术人员可以理解:本申请中涉及的第一、第二等各种数字编号仅为描述方便进行的区分,并不用来限制本申请实施例的范围,也不表示先后顺序。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。“至少一个”是指一个或者多个。至少两个是指两个或者多个。“至少一个”、“任意一个”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个、种),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包括一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(Solid State Disk,SSD))等。
本申请实施例中所描述的各种说明性的逻辑单元和电路可以通过通用处理器,数字信号处理器,专用集成电路(ASIC),现场可编程门阵列(FPGA)或其它可编程逻辑装置,离散门或晶体管逻辑,离散硬件部件,或上述任何组合的设计来实现或操作所描述的功能。通用处理器可以为微处理器,可选地,该通用处理器也可以为任何传统的处理器、控制器、微控制器或状态机。处理器也可以通过计算装置的组合来实现,例如数字信号处理器和微处理器,多个微处理器,一个或多个微处理器联合一个数字信号处理器核,或任何其它类似的配置来实现。
本申请实施例中所描述的方法或算法的步骤可以直接嵌入硬件、处理器执行的软件单元、或者这两者的结合。软件单元可以存储于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动磁盘、CD-ROM或本领域中其它任意形式的存储媒介中。示例性地,存储媒介可以与处理器连接,以使得处理器可以从存储媒介中读取信息,并可以向存储媒介存写信息。可选地,存储媒介还可以集成到处理器中。处理器和存储媒介可以设置于ASIC中,ASIC可以设置于终端中。可选地,处理器和存储媒介也可以设置于终端中的不同的部件中。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管结合具体特征及其实施例对本申请进行了描述,显而易见的,在不脱离本申请的精神和范围的情况下,可对其进行各种修改和组合。相应地,本说明书和附图仅仅是本申请所界定的本申请的示例性说明,且视为已覆盖本申请范围内的任意和所有修改、变化、组合或等同物。显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的范围。这样,倘若本申请的这些修改和变型属于本申请及其等同技术的范围之内,则本申请意图包括这些改动和变型在内。

Claims (10)

1.一种基于拦截器的交易带附件双轨并行处理方法,其特征在于,所述方法包括:
从交易报文中根据分片键获取客户信息;
判断所述客户信息是否在白名单中;
如果所述客户信息在所述白名单中,将交易转发到新系统执行,并获取响应报文;
判断所述交易是否为带附件交易;
如果所述交易为带附件交易,从所述响应报文中获取交易状态信息;
根据所述交易状态信息,判断所述交易是否执行成功;
如果所述交易执行成功,从报文COM域中获取对应的文件路径及文件名称;
根据所述对应的文件路径及文件名称,判断是否配置文件传输服务器地址;
如果已配置所述文件传输服务器地址,获取所述服务器IP和端口信息;
根据所述服务器IP和端口信息,通过调用文件传输客户端API将附件从所述新系统传输到老系统。
2.如权利要求1所述的方法,其特征在于,所述从交易报文中根据分片键获取客户信息,包括:
判断传入信息是否为客户信息;
如果所述传入信息不是所述客户信息,从卡账客路由索引中获取对应的所述客户信息。
3.如权利要求1所述的方法,其特征在于,所述如果所述客户信息在所述白名单中,将交易转发到新系统执行,并获取响应报文,包括:
获取对应交易在新系统中的访问地址;
根据路由算法转发到所述新系统中进行处理,在所述新系统中处理完交易逻辑后,将所述响应报文返回到所述老系统。
4.如权利要求1所述的方法,其特征在于,所述判断所述客户信息是否在白名单中之后,还包括:
如果所述客户信息不在所述白名单中,在所述老系统中执行原有交易逻辑。
5.如权利要求1所述的方法,其特征在于,所述判断所述交易是否为带附件交易,包括:
判断List中是否包含对应交易号;
如果所述List中包含所述对应交易号,确定所述交易为带附件交易;
如果所述List中不包含所述对应交易号,确定所述交易为不带附件交易。
6.如权利要求1所述的方法,其特征在于,所述判断是否配置文件传输服务器地址之后,还包括:
如果未配置所述文件传输服务器地址,在注册中心注册所述新系统的交易并启动文件传输服务,从所述注册中心根据负载均衡策略获取对应组件的所述文件传输服务器地址。
7.如权利要求1所述的方法,其特征在于,所述根据所述服务器IP和端口信息,通过调用文件传输客户端API将附件从所述新系统传输到老系统之后,还包括:
判断调用文件传输客户端API将附件从所述新系统传输到所述老系统的传输过程是否成功;
如果不成功,将所述报文状态信息调整为失败,设置错误码和错误描述信息。
8.如权利要求7所述的方法,其特征在于,所述如果不成功,将所述报文状态信息调整为失败,设置错误码和错误描述信息之前,包括:
设置失败重试次数阈值;
在所述失败重试次数阈值内,如果所述传输过程失败,则继续执行所述传输过程的传输操作。
9.一种基于拦截器的交易带附件双轨并行处理系统,其特征在于,所述系统包括:
第一获得单元,所述第一获得单元用于从交易报文中根据分片键获取客户信息;
第一判断单元,所述第一判断单元用于判断所述客户信息是否在白名单中;
第二获得单元,所述第二获得单元用于如果所述客户信息在所述白名单中,将交易转发到新系统执行,并获取响应报文;
第二判断单元,所述第二判断单元用于判断所述交易是否为带附件交易;
第三获得单元,所述第三获得单元用于如果所述交易为带附件交易,从所述响应报文中获取交易状态信息;
第三判断单元,所述第三判断单元用于根据所述交易状态信息,判断所述交易是否执行成功;
第四获得单元,所述第四获得单元用于如果所述交易执行成功,从报文COM域中获取对应的文件路径及文件名称;
第四判断单元,所述第四判断单元用于根据所述对应的文件路径及文件名称,判断是否配置文件传输服务器地址;
第五获得单元,所述第五获得单元用于如果已配置所述文件传输服务器地址,获取所述服务器IP和端口信息;
第一执行单元,所述第一执行单元用于根据所述服务器IP和端口信息,通过调用文件传输客户端API将附件从所述新系统传输到老系统。
10.一种基于拦截器的交易带附件双轨并行处理系统,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1-8任一项所述方法的步骤。
CN202111526521.7A 2021-12-14 2021-12-14 一种基于拦截器的交易带附件双轨并行处理方法及系统 Active CN114244829B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111526521.7A CN114244829B (zh) 2021-12-14 2021-12-14 一种基于拦截器的交易带附件双轨并行处理方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111526521.7A CN114244829B (zh) 2021-12-14 2021-12-14 一种基于拦截器的交易带附件双轨并行处理方法及系统

Publications (2)

Publication Number Publication Date
CN114244829A CN114244829A (zh) 2022-03-25
CN114244829B true CN114244829B (zh) 2024-03-22

Family

ID=80755716

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111526521.7A Active CN114244829B (zh) 2021-12-14 2021-12-14 一种基于拦截器的交易带附件双轨并行处理方法及系统

Country Status (1)

Country Link
CN (1) CN114244829B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1118949A1 (en) * 2000-01-21 2001-07-25 Hewlett-Packard Company, A Delaware Corporation Process and apparatus for allowing transaction between a user and a remote server
CN105827541A (zh) * 2016-04-06 2016-08-03 中国建设银行股份有限公司 用于联机交易的数据报文处理方法和系统
US10540644B1 (en) * 2013-08-06 2020-01-21 Patricia A. Walker Banking system for carrying out a sought transaction/sought product associated with a transaction/product parameter using a mobile device
CN113656374A (zh) * 2021-08-19 2021-11-16 中国银行股份有限公司 带有附件的业务报文的处理方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190164154A1 (en) * 2017-11-27 2019-05-30 Fortune Cookie Consulting, Ltd. System and method for facilitating secure transactions

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1118949A1 (en) * 2000-01-21 2001-07-25 Hewlett-Packard Company, A Delaware Corporation Process and apparatus for allowing transaction between a user and a remote server
US10540644B1 (en) * 2013-08-06 2020-01-21 Patricia A. Walker Banking system for carrying out a sought transaction/sought product associated with a transaction/product parameter using a mobile device
CN105827541A (zh) * 2016-04-06 2016-08-03 中国建设银行股份有限公司 用于联机交易的数据报文处理方法和系统
CN113656374A (zh) * 2021-08-19 2021-11-16 中国银行股份有限公司 带有附件的业务报文的处理方法及装置

Also Published As

Publication number Publication date
CN114244829A (zh) 2022-03-25

Similar Documents

Publication Publication Date Title
CN109542611B (zh) 数据库即服务系统、数据库调度方法、设备及存储介质
US8843580B2 (en) Criteria-based message publication control and feedback in a publish/subscribe messaging environment
CN108027828B (zh) 与无状态同步节点的托管文件同步
US20130290952A1 (en) Copying Virtual Machine Templates To Cloud Regions
CN114787781A (zh) 用于启用高可用性受管理故障转移服务的系统和方法
US8756656B1 (en) Systems and methods for creating and synchronizing security metadata within synchronized-data networks
JP2008536244A (ja) P2pネットワーク・ソフトウェアを検出するシステム及び方法
JP7398430B2 (ja) モバイルデバイス管理のための照会不要なデバイスコンフィギュレーション判定ベースの技法
US20120215873A1 (en) Failure-controlled message publication and feedback in a publish/subscribe messaging environment
US10848395B2 (en) State management across distributed services using cryptographically bound journals
CN114189525B (zh) 服务请求方法、装置和电子设备
CN100418319C (zh) 透明计算系统中端设备间数据的传送方法
US8549582B1 (en) Methods for handling a multi-protocol content name and systems thereof
Vizier et al. ComChain: A blockchain with Byzantine fault‐tolerant reconfiguration
US8600960B2 (en) Processing proposed changes to data
WO2020114590A1 (en) Method and system for determining a state of an account in a network device running a light client protocol of a distributed ledger technology network
CN114244829B (zh) 一种基于拦截器的交易带附件双轨并行处理方法及系统
CN104423944B (zh) 一种软件应用系统
US11645211B2 (en) Augmenting storage functionality using emulation of storage characteristics
CN111857548B (zh) 数据读取方法、装置及系统
US11829261B2 (en) Providing a logical data isolation with intermittent connectivity
US10235331B1 (en) Event-based synchronization in a file sharing environment
US11526344B2 (en) Distributed GeoIP information updating
US11487526B2 (en) Distributed user agent information updating
CN113342275B (zh) 区块链节点存取数据的方法、设备和计算机可读存储介质

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