首页> 中国专利> 金融级消息报文处理方法及装置

金融级消息报文处理方法及装置

摘要

本发明提供了一种金融级消息报文处理方法及装置,其中该方法包括:接收外部系统发送的金融级消息报文;根据预设的数据传输对象定义参数,利用动态反射方法,将接收的金融级消息报文映射成对象数据,确定对象的标签信息;根据对象的标签信息,基于逻辑回归模型进行路由计算,确定内部系统中数据接收的服务接口;将对象数据,发送至服务接口。通过根据预设的数据传输对象定义参数,利用动态反射方法,将接收的金融级消息报文映射成对象数据,确定对象的标签信息,实现了采用基于注解来动态转化标签,使得报文的转换速度快、效率高,从而提高报文的处理效率。

著录项

  • 公开/公告号CN114979264A

    专利类型发明专利

  • 公开/公告日2022-08-30

    原文格式PDF

  • 申请/专利权人 中国银行股份有限公司;

    申请/专利号CN202210529496.6

  • 发明设计人 王兴华;田生;阎钢;

    申请日2022-05-16

  • 分类号H04L67/565(2022.01);H04L69/08(2022.01);G06Q40/02(2012.01);

  • 代理机构北京三友知识产权代理有限公司 11127;北京三友知识产权代理有限公司 11127;

  • 代理人汤在彦;沈珍珠

  • 地址 100818 北京市西城区复兴门内大街1号

  • 入库时间 2023-06-19 16:36:32

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-09-16

    实质审查的生效 IPC(主分类):H04L67/565 专利申请号:2022105294966 申请日:20220516

    实质审查的生效

说明书

技术领域

本发明涉及数据处理技术领域,尤其涉及一种金融级消息报文处理方法及装置。

背景技术

金融级消息报文处理过程中,往往需要依据消息协议格式组装成报文,发送给接收方,同时也需要将接收的报文,转化成可被业务处理的对象,如Tag1=值#0001Tag2=值#0001报文协议,将Tag1、Tag2标签需要动态转化为“name”、“age”等变量,将报文转换为JSON(JavaScriptObject Notation,JS对象简谱)对象如{“name”:“xiaoming”,“age”:23},现有技术采用数据库配置的方式进行转换,但数据库连接数多,导致转换速度慢,从而导致处理效率低。

发明内容

本发明实施例提供一种金融级消息报文处理方法,用以提高报文的处理效率,该方法包括:

接收外部系统发送的金融级消息报文;

根据预设的数据传输对象定义参数,利用动态反射方法,将接收的金融级消息报文映射成对象数据,确定对象的标签信息;

根据所述对象的标签信息,基于逻辑回归模型进行路由计算,确定内部系统中数据接收的服务接口;

将所述对象数据,发送至所述服务接口。

本发明实施例还提供一种金融级消息报文处理装置,用以提高报文的处理效率,该装置包括:

报文接收模块,用于接收外部系统发送的金融级消息报文;

报文转换模块,用于根据预设的数据传输对象定义参数,利用动态反射方法,将接收的金融级消息报文映射成对象数据,确定对象的标签信息;

路由计算模块,用于根据所述对象的标签信息,基于逻辑回归模型进行路由计算,确定内部系统中数据接收的服务接口;

内部系统转发模块,用于将所述对象数据,发送至所述服务接口。

本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述金融级消息报文处理方法。

本发明实施例也提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述金融级消息报文处理方法的计算机程序。

本发明实施例也提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现上述金融级消息报文处理方法。

本发明实施例中,通过接收外部系统发送的金融级消息报文;根据预设的数据传输对象定义参数,利用动态反射方法,将接收的金融级消息报文映射成对象数据,确定对象的标签信息;根据对象的标签信息,基于逻辑回归模型进行路由计算,确定内部系统中数据接收的服务接口;将对象数据,发送至服务接口。通过根据预设的数据传输对象定义参数,利用动态反射方法,将接收的金融级消息报文映射成对象数据,确定对象的标签信息,实现了采用基于注解来动态转化标签,使得报文的转换速度快、效率高,从而提高报文的处理效率。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例中金融级消息报文处理方法的示意图。

图2为本发明一具体实施例中金融级消息报文处理方法的示意图。

图3为本发明具体实例中金融级消息报文处理系统的工作逻辑示意图。

图4为本发明实施例中金融级消息报文处理装置的示意图。

图5为本发明一具体实施例中金融级消息报文处理装置的示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例提供了一种金融级消息报文处理方法,用以提高报文的处理效率,如图1所示,该方法包括:

步骤101:接收外部系统发送的金融级消息报文;

步骤102:根据预设的数据传输对象定义参数,利用动态反射方法,将接收的金融级消息报文映射成对象数据,确定对象的标签信息;

步骤103:根据对象的标签信息,基于逻辑回归模型进行路由计算,确定内部系统中数据接收的服务接口;

步骤104:将对象数据,发送至该服务接口。

由图1所示流程可以得知,本发明实施例中,通过接收外部系统发送的金融级消息报文;根据预设的数据传输对象定义参数,利用动态反射方法,将接收的金融级消息报文映射成对象数据,确定对象的标签信息;根据对象的标签信息,基于逻辑回归模型进行路由计算,确定内部系统中数据接收的服务接口;将对象数据,发送至服务接口。通过根据预设的数据传输对象定义参数,利用动态反射方法,将接收的金融级消息报文映射成对象数据,确定对象的标签信息,实现了采用基于注解来动态转化标签,使得报文的转换速度快、效率高,从而提高报文的处理效率。

具体实施时,首先接收外部系统发送的金融级消息报文,其中,金融级消息报文是指指符合金融行业数据交换标准协议报文,如涉及基金申购、赎回、定投等协议报文,内容包含交易类型、账号、账户类型等数据项,常见数据交换方式包括TCP、FTP、MQ等联机和批量方式。本文具体实施案例中,金融级消息报文是指采用MQ消息队列联机方式与TA系统交互报文形式。具体实施例中,外部系统是指TA(中国结算公司)开放式基金登记过户系统,是证券登记结算机构用于登记结算投资者所持有开放式基金份额的系统。

具体实施例中,为了进一步提高处理效率,保证报文的安全性,需要提前对接收的报文进行合法性校验,步骤101具体实施时,根据预设的报文规范信息,对外部系统发送的金融级消息报文的合法性进行校验,校验合法后接收金融级消息报文。其中,报文规范信息是指对金融级消息报文的合法性的相关规范,即对报文的类型、长度、取值范围等相关规定。

接收外部系统发送的金融级消息报文后,根据预设的数据传输对象定义参数,利用动态反射方法,将接收的金融级消息报文映射成对象数据,确定对象的标签信息。具体实施例中,预设的数据传输对象定义参数,是指预先应用自定义注解Annotation对报文进行的标注所形成的转换规则。其中,Java提供了一种为程序元素关联任何信息或任何元数据(metadata)的途径和方法,Annotion是一个接口,程序可以通过反射来获取指定程序元素的Annotion对象,然后通过Annotion对象来获取注解里面的元数据,Annotation可以用于创建文档,跟踪代码中的依赖性,甚至执行基本编译时检查。从某些方面看,Annotation就像修饰符一样被使用,并应用于包、类型、构造方法、方法、成员变量、参数、本地变量的声明中。这些信息被存储在Annotation的“name=value”结构对中,Annotation的成员提供了程序元素的关联信息(成员称为参数或注解属性),且Annotation的成员在Annotation类型中以无参数的方法的形式被声明。其方法名和返回值定义了该成员的名字和类型。具体实施例中,通过自定义注解来确定金融级消息报文的数据传输对象(DTO,Data TransferObject)与原报文之间的关系,即得到预设的数据传输对象定义参数,具体包括:制定金融级消息报文规范,规范金融级消息报文的格式等内容;收集整理接收双方的报文协议,提炼相关的报文规律;对获取得到的报文协议进行整理、去空格、标点及转义字符等预处理;依据自定义注解规范,形成金融级消息报文对应DTO对象;完善DTO对象的定义,制定DTO的对象的约束,如报文长度、枚举值、类型、路由规则等,形成报文DTO注解规则。

定义得到数据传输对象定义参数后,利用动态反射方法,将接收的金融级消息报文映射成对象数据,确定对象的标签信息,具体实施时,依据上述形成的报文DTO注解规则,通过反射方式动态映射成对象数据,并得到对象类型、长度、枚举值、路由规则以及校验位等标签信息。其中,动态反射Reflection,是把Java类中的各个成分映射成一个个的Java对象。即在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能调用它的任意一个方法和属性。这种动态获取信息及动态调用对象方法的功能叫Java的反射机制。其功能为,在运行时判断任意一个对象所属的类、在运行时构造任意一个类的对象;在运行时判断任意一个类所具有的成员变量和方法。

确定对象的标签信息后,根据对象的标签信息,基于逻辑回归模型进行路由计算,确定内部系统中数据接收的服务接口。具体实施过程包括:根据路由规则,基于逻辑回归模型进行评分估算,确定内部系统中数据接收的服务接口的路由地址。其中,逻辑回归LR模型又称Logistic回归分析,是一种广义的线性回归分析模型。具体实施例中,需要根据请求上下文,将请求路由到对应的接口,本具体实施例基于LR回归模型评分估算,从而实现基于规则的报文动态路由。

确定内部系统中数据接收的服务接口后,将上述对象数据,发送至该服务接口。其中,内部系统是指银行内部的投资类产品销售平台等系统,能够为客户提供投资产品销售业务,包括产品展示、交易、订单、清算、综合查询、系统管理、数据交换等功能。

一具体实施例中,提供的一种金融级消息报文处理方法,不仅能够将外部系统发送的报文转换后发送给内部系统,也能够将内部系统传送的对象数据封装成报文发送给相应的外部系统,如图2所示,在图1的基础上还包括:

步骤201:接收上述服务接口发送的对象数据;

步骤202:根据数据传输对象定义参数,利用动态反射方法,获取接收的对象数据对应的注解内容,确定接收的对象的标签信息;

步骤203:根据接收的对象的标签信息,将接收的对象数据拼装成对应的金融级消息报文;

步骤204:根据接收的对象的标签信息,基于逻辑回归模型进行路由计算,确定外部系统中报文接收的服务接口,将拼装好的金融级消息报文发送至外部系统中报文接收的服务接口。

具体实施时,依据报文DTO注解规则定义的标签信息,将对象数据自动拼装成规定的报文格式(例如1008=值#00011009=值#0001),并自动赋值长度、校验位、消息起始头等,对拼装好的报文进行封装后,发送至报文接收方。

此外,具体实施例中,基于金融级消息报文的路由规则定义消息的唯一标识MsgID,以形成报文消息链路图谱,实现报文全链路追踪。

下面给出一具体实例说明本发明实施例如何进行金融级消息报文处理。

本具体实例提供一种金融级消息报文处理系统,包括:

报文定义模块,用于定义报文DTO注解规则,包含报文长度、类型、枚举值、路由规则等。

数据预处理模块,用于依据提前设置好的报文规范信息,校验接收的金融级消息报文的报文长度、所包含字段是否必填、报文类型、取值范围以及合法性等功能。

报文接收模块,用于依据注解定义的规则,基于LR回归模型评分估算,实现报文动态路由;采用基于kafka消息中间件的方案,实现服务异步解耦,全链路异步消息接收。

报文发送模块,用于封装消息底层接收与发送API函数,并采用基于kafka消息中间件的方案,实现服务异步解耦,全链路异步消息发送;用于依据注解定义的规则,基于LR回归模型评分估算,实现报文动态路由。

报文解析模块,用于依据提前规定的报文格式规则,进行报文拆分。

报文转换模块,用于将拆分后的报文,依据自定义注解提前规定的报文DTO注解规则,进行动态标签映射,生成相应的JSON对象组;或依据报文DTO注解规则,将内部系统发送的JSON对象组自动拼装成报文格式,并自动赋值长度、校验位、消息起始头等。

自定义规则功能模块,用于动态定义报文重发规则,如是否重发、重发次数和重发的时间要求等;还可用于自定义回执消息处理方式和重发消息处理方式等;

全链路追踪功能模块,用于记录金融级消息报文的发送与接收情况;基于其路由规则定义消息唯一标识MsgID,形成报文消息链路图谱,实现报文全链路追踪功能。

该金融级消息报文处理系统的工作逻辑如图3所示,包括:

外部系统接口发送金融级消息报文到报文接收模块,接收外部系统发送的金融级消息报文数据,依据报文规范信息,进行报文合法性检查,包括报文的类型、长度、取值范围等,返回合法与非法判断,若非法返回外部系统;若报文合法,提供给报文解析模块。依据提前规定的报文格式规则,进行报文拆分。将拆分后的报文发送给报文转换模块,依据自定义注解提前规定的报文DTO注解规则,进行动态标签映射,进行报文格式转换,转换成可被程序理解与处理的JSON对象数据;同时依据得到的路由规则标签,进行路由计算,选取相应的报文接收服务接口,发送给相应的内部系统。

内部系统接口发送JSON对象数据,供给报文转换模块,依据自定义注解提前规定的报文DTO注解规则,进行报文格式转换,转换成外部要求的报文格式,同时依据定义的路由规则标签,进行路由计算,选取相应的服务接口,提供给报文发送模块,将符合规定的金融级消息报文,发送给相应的服务接口,提供给外部系统。

通过基于预先设置的自定义注解,动态转化标签的方式,克服了现有技术中报文解析的过程中出现的报文冗长、数据库连接数多、转换效率低以及可视化效果差等问题;且在字段发生变更时,也无需对报文接口进行对应的调整,灵活性更高。通过基于LR回归模型评分估算,实现了基于路由规则的报文动态路由,而现有技术中只能采用简单的版本标识方式,实现报文简单的版本路由,相较于现有技术更加自动,更加灵活。

上述具体应用的实施仅为举例,其余实施方式不再一一赘述。

基于同一发明构思,本发明实施例还提供一种金融级消息报文处理装置,由于金融级消息报文处理装置所解决问题的原理与金融级消息报文处理方法相似,因此金融级消息报文处理装置的实施可以参见金融级消息报文处理方法的实施,重复之处不再赘述,具体结构如图4所示:

报文接收模块401,用于接收外部系统发送的金融级消息报文;

报文转换模块402,用于根据预设的数据传输对象定义参数,利用动态反射方法,将接收的金融级消息报文映射成对象数据,确定对象的标签信息;

路由计算模块403,用于根据对象的标签信息,基于逻辑回归模型进行路由计算,确定内部系统中数据接收的服务接口;

内部系统转发模块404,用于将对象数据,发送至服务接口。

具体实施时,报文接收模块401,具体用于:

根据预设的报文规范信息,对外部系统发送的金融级消息报文的合法性进行校验,校验合法后接收金融级消息报文。

具体实施例中,对象的标签信息包括路由规则,相应地,路由计算模块403,具体用于:根据路由规则,基于逻辑回归模型进行评分估算,确定内部系统中数据接收的服务接口的路由地址。

具体实施例中,还提供一种金融级消息报文处理装置,如图5所示,在图4的基础上,还包括:

对象数据接收模块501,用于接收上述服务接口发送的对象数据;

对象数据解析模块502,用于根据数据传输对象定义参数,利用动态反射方法,获取接收的对象数据对应的注解内容,确定接收的对象的标签信息;

报文拼接模块503,用于根据接收的对象的标签信息,将接收的对象数据拼装成对应的金融级消息报文;

报文发送模块504,用于根据接收的对象的标签信息,基于逻辑回归模型进行路由计算,确定外部系统中报文接收的服务接口,将拼装好的金融级消息报文发送至外部系统中报文接收的服务接口。

本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述金融级消息报文处理方法。

本发明实施例还提供一种计算机可读存储介质,存储有执行上述金融级消息报文处理方法的计算机程序。

本发明实施例也提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现上述金融级消息报文处理方法。

综上所述,本发明实施例提供的金融级消息报文处理方法及装置具有如下优点:

通过接收外部系统发送的金融级消息报文;根据预设的数据传输对象定义参数,利用动态反射方法,将接收的金融级消息报文映射成对象数据,确定对象的标签信息;根据对象的标签信息,基于逻辑回归模型进行路由计算,确定内部系统中数据接收的服务接口;将对象数据,发送至服务接口。通过根据预设的数据传输对象定义参数,利用动态反射方法,将接收的金融级消息报文映射成对象数据,确定对象的标签信息,实现了采用基于注解来动态转化标签,使得报文的转换速度快、效率高,从而提高报文的处理效率,且可视化效果好。通过基于LR回归模型评分估算,实现了基于路由规则的报文动态路由,能够提供基于自主学习高效的接口路由。通过形成报文消息链路图谱,实现了报文消息全服务的动态跟踪。

本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、装置和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号