CN114006927B - 业务报文的处理方法及其处理装置、电子设备、存储介质 - Google Patents
业务报文的处理方法及其处理装置、电子设备、存储介质 Download PDFInfo
- Publication number
- CN114006927B CN114006927B CN202111284181.1A CN202111284181A CN114006927B CN 114006927 B CN114006927 B CN 114006927B CN 202111284181 A CN202111284181 A CN 202111284181A CN 114006927 B CN114006927 B CN 114006927B
- Authority
- CN
- China
- Prior art keywords
- message
- processing
- external
- service
- service message
- 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
Links
- 238000012545 processing Methods 0.000 title claims abstract description 148
- 238000003672 processing method Methods 0.000 title claims abstract description 21
- 238000000034 method Methods 0.000 claims abstract description 32
- 230000003993 interaction Effects 0.000 claims description 21
- 238000012163 sequencing technique Methods 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 7
- 230000001960 triggered effect Effects 0.000 claims description 5
- 238000010276 construction Methods 0.000 claims description 3
- KLPWJLBORRMFGK-UHFFFAOYSA-N Molindone Chemical compound O=C1C=2C(CC)=C(C)NC=2CCC1CN1CCOCC1 KLPWJLBORRMFGK-UHFFFAOYSA-N 0.000 claims 2
- 229940028394 moban Drugs 0.000 claims 2
- 238000005516 engineering process Methods 0.000 abstract description 7
- 230000008569 process Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 4
- 230000002688 persistence Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000005538 encapsulation Methods 0.000 description 2
- 230000026676 system process Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Economics (AREA)
- Finance (AREA)
- Medical Informatics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种业务报文的处理方法及其处理装置、电子设备、存储介质,涉及金融科技领域,该处理方法包括:接收外部金融机构传输的业务报文,其中,业务报文包含:外部通用标签和内部私有标签,读取业务报文中的外部通用标签中的接口类型,并基于接口类型确定业务报文的报文类型,在当前系统中存储有与报文类型对应的报文模板的情况下,根据业务报文中的内部私有标签,处理业务报文,得到报文处理结果,将报文处理结果返回至外部金融机构。本发明解决了相关技术中在对外部金融机构的业务报文进行处理时,配置多类型接口的工作较为繁琐,导致处理效率低下的技术问题。
Description
技术领域
本发明涉及金融科技技术领域,具体而言,涉及一种业务报文的处理方法及其处理装置、电子设备、存储介质。
背景技术
随着外部金融机构(例如,基金公司)数量不断增加,需要与托管行系统进行交互的业务也越来越多,由于外部金融机构不断有新接口接入,并且接口类型种类不断扩大,例如,接口类型有对账、指令、余额查询等,使得对新加入的接口进行配置的工作较为繁琐,同时,由于每家外部金融机构对于同一类接口的要求也有所不同,并且每天外部直连的数量也异常庞大。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种业务报文的处理方法及其处理装置、电子设备、存储介质,以至少解决相关技术中在对外部金融机构的业务报文进行处理时,配置多类型接口的工作较为繁琐,导致处理效率低下的技术问题。
根据本发明实施例的一个方面,提供了一种业务报文的处理方法,包括:接收外部金融机构传输的业务报文,其中,所述业务报文包含:外部通用标签和内部私有标签,所述外部通用标签存储有报文来源信息,所述内部私有标签存储有待处理的业务信息;读取所述业务报文中的外部通用标签中的接口类型,并基于所述接口类型确定所述业务报文的报文类型;在当前系统中存储有与所述报文类型对应的报文模板的情况下,根据所述业务报文中的内部私有标签,处理所述业务报文,得到报文处理结果,其中,所述报文模板为预先配置的接口收发模板,对应不同的接口类型;将所述报文处理结果返回至所述外部金融机构。
可选地,在接收外部金融机构传输的业务报文之前,所述处理方法还包括:采集不同所述外部金融机构所使用接口的接口类型,得到多种接口类型;设置不同接口类型的接口能够复用的外部通用标签,并设置与每种所述接口类型对应的内部私有标签;基于所述外部通用标签和所述内部私有标签,构建所述报文模板。
可选地,在接收外部金融机构传输的业务报文之后,所述处理方法还包括:封装所述业务报文和报文发送主体的主体信息、报文发送时间,得到待处理的消息体;将所述待处理的消息体加入至消息队列中;采用多线程并发处理所述消息队列中的各个消息体;在触发处理所述业务报文的消息体时,执行读取所述业务报文中的外部通用标签中的接口类型的步骤。
可选地,采用多线程并发处理所述消息队列中的各个消息体的步骤,包括:采用高并发流量削峰方式,将满足预设缓存条件的消息体缓存至消息中间件中;检测多线程并发处理的线程处理速率;在线程处理速率高于预设速率阈值的情况下,从所述消息中间件读取缓存的所述消息体,并采用空闲线程处理所述消息体。
可选地,采用多线程并发处理所述消息队列中的各个消息体的步骤,包括:基于每个所述消息体的接口类型的反馈回执,确定所述消息体的执行优先级,其中,所述反馈回执为技术回执或者业务回执;基于所述执行优先级,对所述消息队列中的所有消息体进行排序,得到排序结果;基于所述排序结果,处理所述消息队列中的各个消息体。
可选地,在接收外部金融机构传输的业务报文之后,所述处理方法还包括:采用所述外部通用标签中的主体代码字段检测所述外部金融机构是否存在交互权限;在所述外部金融机构存在交互权限的情况下,则执行读取所述业务报文中的外部通用标签中的接口类型的步骤;在所述外部金融机构不存在交互权限的情况下,则不处理所述业务报文。
根据本发明实施例的另一方面,还提供了一种业务报文的处理装置,包括:接收单元,用于接收外部金融机构传输的业务报文,其中,所述业务报文包含:外部通用标签和内部私有标签,所述外部通用标签存储有报文来源信息,所述内部私有标签存储有待处理的业务信息;读取单元,用于读取所述业务报文中的外部通用标签中的接口类型,并基于所述接口类型确定所述业务报文的报文类型;处理单元,用于在当前系统中存储有与所述报文类型对应的报文模板的情况下,根据所述业务报文中的内部私有标签,处理所述业务报文,得到报文处理结果,其中,所述报文模板为预先配置的接口收发模板,对应不同的接口类型;返回单元,用于将所述报文处理结果返回至所述外部金融机构。
可选地,所述处理装置还包括:采集单元,用于在接收外部金融机构传输的业务报文之前,采集不同所述外部金融机构所使用接口的接口类型,得到多种接口类型;设置单元,用于设置不同接口类型的接口能够复用的外部通用标签,并设置与每种所述接口类型对应的内部私有标签;构建单元,用于基于所述外部通用标签和所述内部私有标签,构建所述报文模板。
可选地,所述处理装置还包括:第一封装模块,用于在接收外部金融机构传输的业务报文之后,封装所述业务报文和报文发送主体的主体信息、报文发送时间,得到待处理的消息体;第一加入模块,用于将所述待处理的消息体加入至消息队列中;第一处理模块,用于采用多线程并发处理所述消息队列中的各个消息体;第一执行模块,用于在触发处理所述业务报文的消息体时,执行读取所述业务报文中的外部通用标签中的接口类型的步骤。
可选地,所述第一处理模块包括:第一缓存子模块,用于采用高并发流量削峰方式,将满足预设缓存条件的消息体缓存至消息中间件中;第一检测子模块,用于检测多线程并发处理的线程处理速率;第一读取子模块,用于在线程处理速率高于预设速率阈值的情况下,从所述消息中间件读取缓存的所述消息体,并采用空闲线程处理所述消息体。
可选地,所述第一处理模块包括:第一确定子模块,用于基于每个所述消息体的接口类型的反馈回执,确定所述消息体的执行优先级,其中,所述反馈回执为技术回执或者业务回执;第一排序子模块,用于基于所述执行优先级,对所述消息队列中的所有消息体进行排序,得到排序结果;第一处理子模块,用于基于所述排序结果,处理所述消息队列中的各个消息体。
可选地,所述处理装置还包括:第一判断模块,用于在接收外部金融机构传输的业务报文之后,采用所述外部通用标签中的主体代码字段检测所述外部金融机构是否存在交互权限;第二执行模块,用于在所述外部金融机构存在交互权限的情况下,则执行读取所述业务报文中的外部通用标签中的接口类型的步骤;在所述外部金融机构不存在交互权限的情况下,则不处理所述业务报文。
根据本发明实施例的另一方面,还提供了一种电子设备,包括一个或多个处理器和存储器,所述存储器用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现上述任意一项所述的业务报文的处理方法。
根据本发明实施例的另一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行上述任意一项所述的业务报文的处理方法。
在本公开中,接收外部金融机构传输的业务报文,其中,业务报文包含:外部通用标签和内部私有标签,外部通用标签存储有报文来源信息,内部私有标签存储有待处理的业务信息,读取业务报文中的外部通用标签中的接口类型,并基于接口类型确定业务报文的报文类型,在当前系统中存储有与报文类型对应的报文模板的情况下,根据业务报文中的内部私有标签,处理所述业务报文,得到报文处理结果,将报文处理结果返回至外部金融机构。在本申请中,通过采用外部通用标签和内部私有标签相结合的录入方式(将所有金融机构所有接口中的通用标签固定化,只需要灵活配置每个接口中独有的私有标签即可),处理业务报文,将报文处理结果返回至外部金融机构,能够解决由于直连接口多样化,使得业务处理流程较为繁琐的问题,并为外部金融机构以及其相关业务提供了便捷、高效、灵活的直连模式,进而解决了相关技术中在对外部金融机构的业务报文进行处理时,配置多类型接口的工作较为繁琐,导致处理效率低下的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的业务报文的处理方法的流程图;
图2是根据本发明实施例的一种可选的处理业务报文的系统架构的示意图;
图3是根据本发明实施例的一种可选的业务报文的处理装置的示意图;
图4是根据本发明实施例的一种用于实现业务报文的处理方法的电子设备(或移动设备)的硬件结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
为便于本领域技术人员理解本发明,下面对本发明各实施例中涉及的部分术语或名词做出解释:
应用程序接口,(Application Programming Interface,简称API),是一些预先定义的接口,或指软件系统不同组成部分衔接的约定。
本发明下述各实施例可应用于各种处理业务报文的系统、应用或者需要处理业务报文的场景下,也可以应用于各种外部金融机构(例如,基金公司、证券公司等)与托管行系统进行消息(消息体内包含有业务报文)交互的场景下,其中,业务报文包括但不限于:指令类业务报文、对账类业务报文、查询类业务报文等。
本发明通过可灵活扩展并基于异步消息队列的分布式直连方法,采用外部通用标签和内部私有标签相结合的录入方式,解决了直连接口多样化对业务处理流程繁琐的问题,为外部金融机构以及其业务提供了便捷、高效、灵活的直连模式,同时,通过异步消息队列的分布式方式能够提升直连效率,使得直连报文的形式更加多样化,使得系统从接收业务报文到反馈处理结果的响应时间加快,提高了业务的时效性。
实施例一
根据本发明实施例,提供了一种业务报文的处理方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本发明实施例的一种可选的业务报文的处理方法的流程图,如图1所示,该方法包括如下步骤:
步骤S102,接收外部金融机构传输的业务报文,其中,业务报文包含:外部通用标签和内部私有标签。
步骤S104,读取业务报文中的外部通用标签中的接口类型,并基于接口类型确定业务报文的报文类型。
步骤S106,在当前系统中存储有与报文类型对应的报文模板的情况下,根据业务报文中的内部私有标签,处理业务报文,得到报文处理结果,其中,报文模板为预先配置的接口收发模板,对应不同的接口类型。
步骤S108,将报文处理结果返回至外部金融机构。
通过上述步骤,可以接收外部金融机构传输的业务报文,其中,业务报文包含:外部通用标签和内部私有标签,读取业务报文中的外部通用标签中的接口类型,并基于接口类型确定业务报文的报文类型,在当前系统中存储有与报文类型对应的报文模板的情况下,根据业务报文中的内部私有标签,处理业务报文,得到报文处理结果,将报文处理结果返回至外部金融机构。在本发明实施例中,通过采用外部通用标签和内部私有标签相结合的录入方式,处理业务报文,将报文处理结果返回至外部金融机构,能够解决由于直连接口多样化,使得业务处理流程较为繁琐的问题,并为外部金融机构以及其相关业务提供了便捷、高效、灵活的直连模式,进而解决了相关技术中在对外部金融机构的业务报文进行处理时,配置多类型接口的工作较为繁琐,导致处理效率低下的技术问题。
下面结合上述各步骤对本发明实施例进行详细说明。
在本发明实施例中,在接收外部金融机构传输的业务报文之前,处理方法还包括:采集不同外部金融机构所使用接口的接口类型,得到多种接口类型;设定不同类型的接口能够复用的外部通用标签,并设备与每种接口类型对应的内部私有标签;基于外部通用标签和内部私有标签,构建报文模板。
在本发明实施例中的标签分为通用标签和私有标签(即每个金融机构/接口特有的标签),在设定通用标签的时候,需要使用所有接口类型的通用主体信息其中,通用主体信息包括:各报文发送主体的主体信息、报文发送时间以及金融产品信息;在设定私有标签时,使用接口所对应的业务信息来配置,其中,业务信息的业务类型为至少之一:指令类、查询类和对账类。
在本发明实施例中,可以使直连的业务报文格式固定,可将整个报文体包含在外部通用标签(例如,<IN>标签)内,将报文体内部包含在内部私有标签(例如,<RECORD>标签),可根据不同接口类型,设定不同的报文内部字段(即内部私有标签中包含的业务信息不同),即内部私有标签内部的内容是不同的,但是内部私有标签之外的内容都是相似的,包含有组合代码(即金融产品信息),时间(即报文发送时间),公司代码(即各报文发送主体的主体信息)等字段,通过部通用标签和内部私有标签,能够构建报文模板。
本实施例中,可以复用固有的标签(即外部通用标签)字段,定制每个外部金融机构以及每个接口特有的标签(即内部私有标签),可通过装配成SQL代码,采用分布式架构,能够实现高效直连。
与现有的需要通过配置每个外部金融机构每个接口才能实行直连交互方式相比,本发明实施例将不再通过每个外部金融机构每个接口去配置,将所有外部金融机构所有接口中的外部通用标签固定化,只需要灵活配置每个接口中独有的内部私有标签即可。对于不同的业务类型,配置不同的指令标签,例如,对于业务类型为指令类的业务信息,只需配置指令相关的标签;对于业务类型为对账类的业务信息,只需配置交易相关的标签;对于业务类型为查询类的业务信息,只需配置账号等相关标签。并且,对于以后新增加的接口和外部金融机构类型,可在此基础上实现灵活配置,避免增加一个新的接口类型所带来的繁琐的配置和开发工作。
步骤S102,接收外部金融机构传输的业务报文,其中,业务报文包含:外部通用标签和内部私有标签,外部通用标签存储有报文来源信息,内部私有标签存储有待处理的业务信息。
在本发明实施例中,外部金融机构包括但不限于:基金机构、证券机构等,各外部金融机构传输的业务报文包含有存储有报文来源信息(例如,组合代码,时间,公司代码等字段)的外部通用标签以及存储有待处理的业务信息(例如,需要进行对账、处理指令、查询余额或明细等)的内部私有标签。
可选的,在接收外部金融机构传输的业务报文之后,处理方法还包括:封装业务报文和报文发送主体的主体信息、报文发送时间,得到待处理的消息体;将待处理的消息体加入至消息队列中;采用多线程并发处理消息队列中的各个消息体;在触发处理业务报文的消息体时,执行读取业务报文中的外部通用标签中的接口类型的步骤。
在本发明实施例中,可以建立消息队列形式和采取分布式的并发模式,可将业务报文和报文发送主体的主体信息(例如,外部金融机构的名称、地址等)、报文发送时间封装为消息体,加入到消息队列中,通过定时(例如,预先设定触发时间或者触发周期)和依赖触发(即当某一事件发生时进行触发,例如,当某一处理线程空闲时,对消息队列中的消息体进行处理)混合方式,灵活调度策略,多线程并发,并且针对不同接口的时效性,能够提升处理效率,实现高效直连,即采用多线程并发处理消息队列中的各个消息体,在触发处理业务报文的消息体时(即满足定时条件或依赖触发条件时),执行读取业务报文中的外部通用标签中的接口类型的步骤。
本发明实施例对于外部金融机构短时间内重复查询的接口,可利用消息队列将接口消息暂存,待后续系统处理空闲时在进行处理,本发明实施例采用分布式消息队列中间件的实现方式,负责接收,保存和分发消息,在分布式场景下可扩展进程之间的通信,同时降低多个系统之间的耦合程度,能够解决应用耦合、异步消息以及流量削峰等的问题。
本发明实施例可以设有消息接收模块与处理模块,当收到直接消息时,将消息写入消息队列中,并返回消息接收成功,处理模块可采用push或者pull的方式去消息队列中获取消息处理,实现模块之间的解耦。
可选的,采用多线程并发处理消息队列中的各个消息体的步骤,包括:采用高并发流量削峰方式,将满足预设缓存条件的消息体缓存至消息中间件中;检测多线程并发处理的线程处理速率;在线程处理速率高于预设速率阈值的情况下,从消息中间件读取缓存的消息体,并采用空闲线程处理消息体。
在本发明实施例中,可采用高并发流量削峰的方式,将满足预设缓存条件(例如,同一外部金融机构同一接口短时间内请求太多,或者对于查询类等时效性不高的接口在短时间内请求过多等)的消息体缓存至消息中间件中,待系统并发压力不高时(即当检测多线程并发处理的线程处理速率高于预设速率阈值时)再从中间件中取出缓存的消息体进行处理(即采用空闲线程处理消息体),能够降低系统在高峰时间段内的处理压力,提升处理效率。
可选的,采用多线程并发处理消息队列中的各个消息体的步骤,包括:基于每个消息体的接口类型的反馈回执,确定消息体的执行优先级,其中,反馈回执为技术回执或者业务回执;基于执行优先级,对消息队列中的所有消息体进行排序,得到排序结果;基于排序结果,处理消息队列中的各个消息体。
在本发明实施例中,直连接口会反馈业务回执以及技术回执两种消息,技术回执应该在收到消息的第一时间反馈,而业务回执可在系统处理完消息后返回(即确定反馈技术回执的优先级高于反馈业务回执的优先级),可按照接收的时间顺序对消息体进行排序,基于消息体的优先级以及排序结果,处理消息队列中的各个消息体。
另一种可选的,本发明实施例注重系统的持久化、高可用和高可靠等特点,由于Open Message协议支持持久化和事务,所以消息中间件可以使用Open Message协议。在本发明实施例的分布式处理模式下,消息可以被保存到磁盘内,选择数据库进行持久化,可采用Master-Slave和Broker-Cluster混合使用的高可用模式,其中,Master-Slave可以主从共享数据,即中间件的数据放在单独一个服务器,中间件的逻辑服务器有多个,且共享一个数据服务器,相比数据和逻辑都放在一个服务器,其优点是中间件的逻辑服务器的高可用性得到了提升,但是,由于共享一个数据服务器,当该数据服务器出现问题时,所有服务器都将无法使用,从而可以结合Broker-Cluster(即多主集群同步),即中间件有多个数据服务器,可以使写入数据在任意服务器进行,然后多个服务器之间相互同步数据,采用二者相结合的模式实现高可用,在高可靠方面,可以使用可靠的协议保证传输可靠,同时运用持久化的技术保证存储可靠。
可选的,接收外部金融机构传输的业务报文的步骤,包括:采用调用应用程序编程接口API接口接收外部金融机构的业务报文。
在本发明实施例中,能够通过调用API接口接收外部金融机构的业务报文。
可选的,在接收外部金融机构传输的业务报文之后,处理方法还包括:采用外部通用标签中的主体代码字段检测外部金融机构是否存在交互权限;在外部金融机构存在交互权限的情况下,则执行读取业务报文中的外部通用标签中的接口类型的步骤;在外部金融机构不存在交互权限的情况下,则不处理业务报文。
在本发明实施例中,可以通过固有标签中的公司代码字段(即外部通用标签中的主体代码字段)判断该机构是否有交互权限,如果不存在交互权限,则不处理该业务报文,如果存在交互权限,则执行读取业务报文中的外部通用标签中的接口类型的步骤。
步骤S104,读取业务报文中的外部通用标签中的接口类型,并基于接口类型确定业务报文的报文类型。
在本发明实施例中,接口类型可以有指令类、对账类、查询类等,通过接口类型能够确定业务报文的报文类型,其中,报文类型可以包括:指令类报文、对账类报文、查询类报文等。
步骤S106,在当前系统中存储有与报文类型对应的报文模板的情况下,根据业务报文中的内部私有标签,处理所述业务报文,得到报文处理结果,其中,报文模板为预先配置的接口收发模板,对应不同的接口类型。
在本发明实施例中,可读取固有标签中的接口类型判断该类型报文模板是否存在当前系统中,无则不处理该报文,有则根据每个特有标签(即内部私有标签)装配成的SQL代码实现相应功能的反馈,可以实现自动对账、自动处理指令、自动查询余额和明细等功能,最终得到报文处理结果,其中,报文模版可以为预先自定义配置的接口收发模板,能够使得配置接口通用化并能够实现快速配置。
并且,在与外部金融机构进行消息交互的同时,可以采用消息加密模式,保证消息的可靠性,避免消息泄露。
步骤S108,将报文处理结果返回至外部金融机构。
图2是根据本发明实施例的一种可选的处理业务报文的系统架构的示意图,如图2所示,包括:发送报文、网关、消息中间件、数据库四个模块,本发明实施例可以通过网关接收外部金融机构发送的报文,将报文缓存在消息中间件中(其中,该消息中间件与数据库连接),当满足触发条件时,从该消息中间件获取报文进行处理,最终将报文处理结果返回至外部金融机构。
本发明实施例,通过灵活扩展并基于异步消息队列的分布式直连方式,采用通用标签和特有标签相结合的录入方式,能够在直连交互量庞大的情况下,缓解系统的处理压力,提升系统处理的速度和效率,并提高时效性,同时,能够减轻业务前台手工配置的繁琐,提高业务效率。
实施例二
本实施例中提供的一种业务报文的处理装置包含了多个实施单元,每个实施单元对应于上述实施例一中的各个实施步骤。
图3是根据本发明实施例的一种可选的业务报文的处理装置的示意图,如图3所示,该处理装置可以包括:接收单元30,读取单元32,处理单元34,返回单元36,其中,
接收单元30,用于接收外部金融机构传输的业务报文,其中,业务报文包含:外部通用标签和内部私有标签,外部通用标签存储有报文来源信息,内部私有标签存储有待处理的业务信息。
读取单元32,用于读取业务报文中的外部通用标签中的接口类型,并基于接口类型确定业务报文的报文类型。
处理单元34,用于在当前系统中存储有与报文类型对应的报文模板的情况下,根据业务报文中的内部私有标签,处理所述业务报文,得到报文处理结果,其中,报文模板为预先配置的接口收发模板,对应不同的接口类型。
返回单元36,用于将报文处理结果返回至外部金融机构。
上述处理装置,可以通过接收单元30接收外部金融机构传输的业务报文,其中,业务报文包含:外部通用标签和内部私有标签,外部通用标签存储有报文来源信息,内部私有标签存储有待处理的业务信息,通过读取单元32读取业务报文中的外部通用标签中的接口类型,并基于接口类型确定业务报文的报文类型,通过处理单元34在当前系统中存储有与报文类型对应的报文模板的情况下,根据业务报文中的内部私有标签,处理所述业务报文,得到报文处理结果,通过返回单元36将报文处理结果返回至外部金融机构。在本发明实施例中,通过采用外部通用标签和内部私有标签相结合的录入方式,处理业务报文,将报文处理结果返回至外部金融机构,能够解决由于直连接口多样化,使得业务处理流程较为繁琐的问题,并为外部金融机构以及其相关业务提供了便捷、高效、灵活的直连模式,进而解决了相关技术中在对外部金融机构的业务报文进行处理时,配置多类型接口的工作较为繁琐,导致处理效率低下的技术问题。
可选地,处理装置还包括:采集单元,用于在接收外部金融机构传输的业务报文之前,采集不同外部金融机构所使用接口的接口类型,得到多种接口类型;设置单元,用于设置不同接口类型的接口能够复用的外部通用标签,并设置与每种接口类型对应的内部私有标签;构建单元,用于基于外部通用标签和内部私有标签,构建报文模板。
可选的,处理装置还包括:第一封装模块,用于在接收外部金融机构传输的业务报文之后,封装业务报文和报文发送主体的主体信息、报文发送时间,得到待处理的消息体;第一加入模块,用于将待处理的消息体加入至消息队列中;第一处理模块,用于采用多线程并发处理消息队列中的各个消息体;第一执行模块,用于在触发处理业务报文的消息体时,执行读取业务报文中的外部通用标签中的接口类型的步骤。
可选的,第一处理模块包括:第一缓存子模块,用于采用高并发流量削峰方式,将满足预设缓存条件的消息体缓存至消息中间件中;第一检测子模块,用于检测多线程并发处理的线程处理速率;第一读取子模块,用于在线程处理速率高于预设速率阈值的情况下,从消息中间件读取缓存的消息体,并采用空闲线程处理消息体。
可选的,第一处理模块包括:第一确定子模块,用于基于每个消息体的接口类型的反馈回执,确定消息体的执行优先级,其中,反馈回执为技术回执或者业务回执;第一排序子模块,用于基于执行优先级,对消息队列中的所有消息体进行排序,得到排序结果;第一处理子模块,用于基于排序结果,处理消息队列中的各个消息体。
可选的,接收单元包括:第一接收模块,用于采用调用应用程序编程接口API接口接收外部金融机构的业务报文。
可选的,处理装置还包括:第一判断模块,用于在接收外部金融机构传输的业务报文之后,采用外部通用标签中的主体代码字段检测外部金融机构是否存在交互权限;第二执行模块,用于在外部金融机构存在交互权限的情况下,则执行读取业务报文中的外部通用标签中的接口类型的步骤;在外部金融机构不存在交互权限的情况下,则不处理业务报文。
上述的处理装置还可以包括处理器和存储器,上述接收单元30,读取单元32,处理单元34,返回单元36等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
上述处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数将报文处理结果返回至外部金融机构。
上述存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序:接收外部金融机构传输的业务报文,其中,业务报文包含:外部通用标签和内部私有标签,外部通用标签存储有报文来源信息,内部私有标签存储有待处理的业务信息,读取业务报文中的外部通用标签中的接口类型,并基于接口类型确定业务报文的报文类型,在当前系统中存储有与报文类型对应的报文模板的情况下,根据业务报文中的内部私有标签,处理业务报文,得到报文处理结果,将报文处理结果返回至外部金融机构。
根据本发明实施例的另一方面,还提供了一种电子设备,包括一个或多个处理器和存储器,存储器用于存储一个或多个程序,其中,当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器实现上述任意一项的业务报文的处理方法。
图4是根据本发明实施例的一种用于实现业务报文的处理方法的电子设备(或移动设备)的硬件结构框图。如图4所示,电子设备可以包括一个或多个(图中采用102a、102b,……,102n来示出)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104。除此以外,还可以包括:显示器、输入/输出接口(I/O接口)、通用串行总线(USB)端口(可以作为I/O接口的端口中的一个端口被包括)、网络接口、键盘、电源和/或相机。本领域普通技术人员可以理解,图4所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,电子设备还可包括比图4中所示更多或者更少的组件,或者具有与图4所示不同的配置。
根据本发明实施例的另一方面,还提供了一种计算机可读存储介质,计算机可读存储介质包括存储的计算机程序,其中,在计算机程序运行时控制计算机可读存储介质所在设备执行上述任意一项的业务报文的处理方法。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (8)
1.一种业务报文的处理方法,其特征在于,包括:
采集不同外部金融机构所使用接口的接口类型,得到多种接口类型;设置不同接口类型的接口能够复用的外部通用标签,并设置与每种所述接口类型对应的内部私有标签,其中,所述内部私有标签是每个金融机构/接口特有的标签;基于所述外部通用标签和所述内部私有标签,构建报文模板;
接收外部金融机构传输的业务报文,其中,所述业务报文包含:外部通用标签和内部私有标签;
读取所述业务报文中的外部通用标签中的接口类型,并基于所述接口类型确定所述业务报文的报文类型;
在当前系统中存储有与所述报文类型对应的报文模板的情况下,根据所述业务报文中的内部私有标签,处理所述业务报文,得到报文处理结果,其中,所述报文模板为预先配置的接口收发模板,对应不同的接口类型;
将所述报文处理结果返回至所述外部金融机构。
2.根据权利要求1所述的处理方法,其特征在于,在接收外部金融机构传输的业务报文之后,所述处理方法还包括:
封装所述业务报文和报文发送主体的主体信息、报文发送时间,得到待处理的消息体;
将所述待处理的消息体加入至消息队列中;
采用多线程并发处理所述消息队列中的各个消息体;
在触发处理所述业务报文的消息体时,执行读取所述业务报文中的外部通用标签中的接口类型的步骤。
3.根据权利要求2所述的处理方法,其特征在于,采用多线程并发处理所述消息队列中的各个消息体的步骤,包括:
采用高并发流量削峰方式,将满足预设缓存条件的消息体缓存至消息中间件中;
检测多线程并发处理的线程处理速率;
在线程处理速率高于预设速率阈值的情况下,从所述消息中间件读取缓存的所述消息体,并采用空闲线程处理所述消息体。
4.根据权利要求2所述的处理方法,其特征在于,采用多线程并发处理所述消息队列中的各个消息体的步骤,包括:
基于每个所述消息体的接口类型的反馈回执,确定所述消息体的执行优先级;
基于所述执行优先级,对所述消息队列中的所有消息体进行排序,得到排序结果;
基于所述排序结果,处理所述消息队列中的各个消息体。
5.根据权利要求1所述的处理方法,其特征在于,在接收外部金融机构传输的业务报文之后,所述处理方法还包括:
采用所述外部通用标签中的主体代码字段检测所述外部金融机构是否存在交互权限;
在所述外部金融机构存在交互权限的情况下,则执行读取所述业务报文中的外部通用标签中的接口类型的步骤;
在所述外部金融机构不存在交互权限的情况下,则不处理所述业务报文。
6.一种业务报文的处理装置,其特征在于,包括:
采集单元,用于采集不同外部金融机构所使用接口的接口类型,得到多种接口类型;设置单元,用于设置不同接口类型的接口能够复用的外部通用标签,并设置与每种所述接口类型对应的内部私有标签,其中,所述内部私有标签是每个金融机构/接口特有的标签;构建单元,用于基于所述外部通用标签和所述内部私有标签,构建报文模板;
接收单元,用于接收外部金融机构传输的业务报文,其中,所述业务报文包含:外部通用标签和内部私有标签;
读取单元,用于读取所述业务报文中的外部通用标签中的接口类型,并基于所述接口类型确定所述业务报文的报文类型;
处理单元,用于在当前系统中存储有与所述报文类型对应的报文模板的情况下,根据所述业务报文中的内部私有标签,处理所述业务报文,得到报文处理结果,其中,所述报文模板为预先配置的接口收发模板,对应不同的接口类型;
返回单元,用于将所述报文处理结果返回至所述外部金融机构。
7.一种电子设备,其特征在于,包括一个或多个处理器和存储器,所述存储器用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现权利要求1至5中任意一项所述的业务报文的处理方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序被处理器执行时控制所述计算机可读存储介质所在设备执行权利要求1至5中任意一项所述的业务报文的处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111284181.1A CN114006927B (zh) | 2021-11-01 | 2021-11-01 | 业务报文的处理方法及其处理装置、电子设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111284181.1A CN114006927B (zh) | 2021-11-01 | 2021-11-01 | 业务报文的处理方法及其处理装置、电子设备、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114006927A CN114006927A (zh) | 2022-02-01 |
CN114006927B true CN114006927B (zh) | 2024-02-02 |
Family
ID=79926212
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111284181.1A Active CN114006927B (zh) | 2021-11-01 | 2021-11-01 | 业务报文的处理方法及其处理装置、电子设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114006927B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1735094A (zh) * | 2004-08-11 | 2006-02-15 | 华为技术有限公司 | 一种网络接口管理的装置及方法 |
CN106651463A (zh) * | 2016-12-30 | 2017-05-10 | 上海富聪金融信息服务有限公司 | 金融机构服务接入系统及其接入方法 |
CN106919590A (zh) * | 2015-12-24 | 2017-07-04 | 阿里巴巴集团控股有限公司 | 一种多业务复用处理方法、装置、及系统 |
CN112330444A (zh) * | 2020-12-31 | 2021-02-05 | 北京快成科技股份公司 | 平台多银行接入调用方法、系统及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101064735B1 (ko) * | 2011-04-27 | 2011-09-14 | 김용한 | 수신인 불특정 메시지 교환 서비스 제공 방법 |
-
2021
- 2021-11-01 CN CN202111284181.1A patent/CN114006927B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1735094A (zh) * | 2004-08-11 | 2006-02-15 | 华为技术有限公司 | 一种网络接口管理的装置及方法 |
CN106919590A (zh) * | 2015-12-24 | 2017-07-04 | 阿里巴巴集团控股有限公司 | 一种多业务复用处理方法、装置、及系统 |
CN106651463A (zh) * | 2016-12-30 | 2017-05-10 | 上海富聪金融信息服务有限公司 | 金融机构服务接入系统及其接入方法 |
CN112330444A (zh) * | 2020-12-31 | 2021-02-05 | 北京快成科技股份公司 | 平台多银行接入调用方法、系统及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN114006927A (zh) | 2022-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107135188B (zh) | 金融信息交换fix协议的业务实现方法、装置及系统 | |
CN109922158A (zh) | 基于微服务的数据处理方法、装置、介质及电子设备 | |
CN107920094B (zh) | 数据获取方法、装置、服务器及网络设备 | |
US20110113117A1 (en) | Asynchronous Collection and Correlation of Trace and Communications Event Data | |
CN112148674A (zh) | 日志数据处理方法、装置、计算机设备和存储介质 | |
CN109343975B (zh) | 用于页面间异步通信的方法和装置 | |
US10303529B2 (en) | Protocol for communication of data structures | |
US7979554B2 (en) | Apparatus, system, and method for enabling conversational transactions in a service oriented architecture | |
CN111447170A (zh) | 数据处理方法及其系统、计算机系统及计算机可读介质 | |
CN114006927B (zh) | 业务报文的处理方法及其处理装置、电子设备、存储介质 | |
CN115051866B (zh) | 一种报文处理方法及装置、存储介质及电子设备 | |
CN113645260A (zh) | 业务重试方法、装置、存储介质及电子设备 | |
CN115250233B (zh) | 一种灰度路由控制方法、灰度路由组件及计算机设备 | |
CN113836145B (zh) | 请求数据的方法、装置、电子设备及计算机可读存储介质 | |
CN112511636B (zh) | 数据传输系统、方法、装置、计算机设备及存储介质 | |
CN111639936B (zh) | 交易信息的获取方法、装置、电子设备及可读存储介质 | |
CN114090210A (zh) | 一种服务调用的实现方法及装置 | |
CN113989046A (zh) | 交易处理方法、装置、电子设备、存储介质和程序产品 | |
CN109600403B (zh) | 一种发送信息的方法及装置 | |
KR100311619B1 (ko) | 분산처리 시스템에서 프로세서간 메시지 송수신 방법 | |
CN112269941A (zh) | 业务实时推送方法、系统、电子设备及存储介质 | |
CN111552907A (zh) | 消息处理方法、装置、设备和存储介质 | |
US20080148293A1 (en) | Configurable event broker | |
CN114422968B (zh) | 退订短信处理方法及装置 | |
CN112347741B (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 |