CN112866268A - 报文处理方法及系统 - Google Patents
报文处理方法及系统 Download PDFInfo
- Publication number
- CN112866268A CN112866268A CN202110127990.5A CN202110127990A CN112866268A CN 112866268 A CN112866268 A CN 112866268A CN 202110127990 A CN202110127990 A CN 202110127990A CN 112866268 A CN112866268 A CN 112866268A
- Authority
- CN
- China
- Prior art keywords
- message
- processed
- service
- information
- route
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/06—Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- 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/2866—Architectures; Arrangements
- H04L67/30—Profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供了一种报文处理方法及系统,可用于金融领域或其他技术领域,该方法包括:接收待处理交易报文信息,该待处理交易报文信息包括:服务私有报文数据、待处理产品服务标识和待处理路由前置标识;根据本地内存中的上下游报文结构配置表、报文交互配置表、所述待处理产品服务标识和待处理路由前置标识,确定所述待处理交易报文信息对应的公区报文数据;根据所述服务私有报文数据和公区报文数据,组装得到目标交易报文信息;将所述目标交易报文信息输出至所述待处理路由前置标识对应的路由前置层微服务群组。本申请能够提高报文处理的准确性,进而能够提高应用系统的可维护性和运行的安全性。
Description
技术领域
本申请涉及数据处理技术领域,尤其涉及一种报文处理方法及系统。
背景技术
随着互联网技术的普及和用户的急速增长,在传统单体式应用系统无法满足用户对应用系统性能容量及高可用需求的情况下,将应用系统改造为分布式微服务架构的现象越来越普遍。
在应用系统改造为分布式微服务架构后,应用系统通常分为业务产品服务层和业务基础服务层微服务群组,为了屏蔽各业务基础服务层升级对外部的影响,业务基础服务层微服务群组中通常包含有一个路由前置层微服务群组,然而各类业务基础服务层微服务群组采用的技术栈不同,接口不同,容易导致上层业务产品服务层微服务群组发送报文至多类路由前置层微服务群组的过程异常,应用系统的可维护性较低,降低应用系统开发的能效。
发明内容
针对现有技术中的问题,本申请提出了一种报文处理方法及系统,能够提高报文处理的准确性,进而能够提高应用系统的可维护性和运行的安全性。
为了解决上述技术问题,本申请提供以下技术方案:
第一方面,本申请提供一种报文处理方法,包括:
接收待处理交易报文信息,该待处理交易报文信息包括:服务私有报文数据、待处理产品服务标识和待处理路由前置标识;
根据本地内存中的上下游报文结构配置表、报文交互配置表、所述待处理产品服务标识和待处理路由前置标识,确定所述待处理交易报文信息对应的公区报文数据;
根据所述服务私有报文数据和公区报文数据,组装得到目标交易报文信息;
将所述目标交易报文信息输出至所述待处理路由前置标识对应的路由前置层微服务群组。
进一步地,所述上下游报文结构配置表包括:产品服务标识、报文配置标识、报文类型、报文结构、下游报文类型和下游报文结构之间的对应关系。
进一步地,所述根据本地内存中的上下游报文结构配置表、报文交互配置表、所述待处理产品服务标识和待处理路由前置标识,确定所述待处理交易报文信息对应的公区报文数据,包括:
根据所述待处理产品服务标识、待处理路由前置标识和上下游报文结构配置表,确定所述待处理交易报文信息对应的待处理报文配置标识;
根据所述待处理报文配置标识和报文交互配置表,确定所述待处理交易报文信息对应的公区报文数据,所述报文交互配置表包括:报文配置标识和公区报文数据之间的对应关系。
进一步地,所述根据所述服务私有报文数据和公区报文数据,组装得到目标交易报文信息,包括:
根据所述上下游报文结构配置表和所述待处理产品服务标识,确定所述待处理交易报文信息对应的报文类型和报文结构;
根据所述待处理交易报文信息对应的报文类型和报文结构,解析所述待处理交易报文信息并确定其公共通讯区的位置;
将所述公区报文数据写入所述待处理交易报文信息的公共通讯区的位置处,得到目标交易报文信息。
进一步地,所述将所述目标交易报文信息输出至所述待处理路由前置标识对应的路由前置层微服务群组,包括:
将所述目标交易报文信息输出至所述待处理路由前置标识对应的路由前置层微服务群组,以使该路由前置层微服务群组根据所述目标交易报文信息完成灰度发布和/或分库路由。
进一步地,在所述将所述目标交易报文信息输出至所述待处理路由前置标识对应的路由前置层微服务群组之前,还包括:
根据所述上下游报文结构配置表、待处理产品服务标识和待处理路由前置标识,确定所述目标交易报文信息的下游报文类型和下游报文结构;
将所述目标交易报文信息的报文类型和报文结构转化为所述目标交易报文的下游报文类型和下游报文结构。
第二方面,本申请提供一种报文处理系统,包括:
接收模块,用于接收待处理交易报文信息,该待处理交易报文信息包括:服务私有报文数据、待处理产品服务标识和待处理路由前置标识;
确定模块,用于根据本地内存中的上下游报文结构配置表、报文交互配置表、所述待处理产品服务标识和待处理路由前置标识,确定所述待处理交易报文信息对应的公区报文数据;
组装模块,用于根据所述服务私有报文数据和公区报文数据,组装得到目标交易报文信息;
输出模块,用于将所述目标交易报文信息输出至所述待处理路由前置标识对应的路由前置层微服务群组。
进一步地,所述上下游报文结构配置表包括:产品服务标识、报文配置标识、报文类型、报文结构、下游报文类型和下游报文结构之间的对应关系。
第三方面,本申请提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述的报文处理方法。
第四方面,本申请提供一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现所述的报文处理方法。
由上述技术方案可知,本申请提供一种报文处理方法及系统。其中,该方法包括:接收待处理交易报文信息,该待处理交易报文信息包括:服务私有报文数据、待处理产品服务标识和待处理路由前置标识;根据本地内存中的上下游报文结构配置表、报文交互配置表、所述待处理产品服务标识和待处理路由前置标识,确定所述待处理交易报文信息对应的公区报文数据;根据所述服务私有报文数据和公区报文数据,组装得到目标交易报文信息;将所述目标交易报文信息输出至所述待处理路由前置标识对应的路由前置层微服务群组,能够提高报文处理的准确性,进而能够提高应用系统的可维护性和运行的安全性;具体地,通过配置上层业务产品服务层微服务群组报文协议和结构和下层业务基础服务层微服务群组报文参数并自动组装,帮助业务产品服务层微服务群组和业务基础服务层微服务群组在业务功能无需关注对方系统的技术栈、报文交互格式和上下游依赖参数。其优点如下:1、通过SIDECAR模式和系统对接,对原系统的侵入性极小,可移植性较强;2、可定制配置系统的上下游报文结构配置表、报文交互配置表,在降低各微服务群组之间的耦合度的同时,能够提升各微服务群组的可维护性;3、配置存储于内存中,报文转换直接读取内存数据,能够提高访问和转换性能。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例中报文处理方法的流程示意图;
图2是本申请实施例中报文处理方法的步骤201和步骤202的流程示意图;
图3是本申请实施例中报文处理系统的结构示意图;
图4是本申请应用实例中报文处理系统的结构示意图;
图5是本申请应用实例中配置缓存装置的结构示意图;
图6是本申请应用实例中报文解析装置的结构示意图;
图7是本申请应用实例中报文转换组装装置的结构示意图;
图8是本申请应用实例中报文处理方法的流程示意图;
图9为本申请实施例的电子设备的系统构成示意框图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为了满足用户对应用系统性能容量及高可用的需求,将应用系统改造为分布式微服务架构的现象越来越普遍,分布式应用系统可以包含有:多组微服务群组;微服务群组包括:业务基础服务层微服务群组和业务产品服务层微服务群组;所述业务基础服务层微服务群组包含有:路由前置层微服务群组;所述业务产品服务层微服务群组与所述路由前置层之间通信连接。
其中,业务基础服务层微服务群组可以是用于抽象分布式应用系统中按数据实体沉淀的领域级方法的微服务群组;业务产品服务层微服务群组可以是用于对业务基础服务层的方法进行组装和排程,完成业务功能的闭环的微服务群组;各个业务基础服务层微服务群组的路由前置层微服务群组能够屏蔽系统升级对微服务群组之间的影响;路由组件可以配置在路由前置层微服务群组中,是微服务群组灰度发布、分库路由的重要技术构件。考虑到各类业务基础服务层微服务群组的路由组件常常因微服务群组研发团队采用的技术栈不同,设计的接口不同,报文传输容易异常,应用的可维护性较差,本申请考虑在上层的业务产品服务层微服务群组适配路由组件时执行报文交互的改造,以解决多个微服务群组路由前置报文转换问题。
基于此,为了提高报文处理的准确性,进而提高应用系统的可维护性和运行的安全性,本申请实施例提供一种报文处理系统,该系统可以是一服务器或客户端设备,所述客户端设备可以包括智能手机、平板电子设备、网络机顶盒、便携式计算机、台式电脑、个人数字助理(PDA)、车载设备和智能穿戴设备等。其中,所述智能穿戴设备可以包括智能眼镜、智能手表和智能手环等。
在实际应用中,进行报文处理的部分可以在如上述内容所述的服务器侧执行,也可以所有的操作都在所述客户端设备中完成。具体可以根据所述客户端设备的处理能力,以及用户使用场景的限制等进行选择。本申请对此不作限定。若所有的操作都在所述客户端设备中完成,所述客户端设备还可以包括处理器。
上述的客户端设备可以具有通信模块(即通信单元),可以与远程的服务器进行通信连接,实现与所述服务器的数据传输。所述服务器可以包括任务调度中心一侧的服务器,其他的实施场景中也可以包括中间平台的服务器,例如与任务调度中心服务器有通信链接的第三方服务器平台的服务器。所述的服务器可以包括单台计算机设备,也可以包括多个服务器组成的服务器集群,或者分布式装置的服务器结构。
所述服务器与所述客户端设备之间可以使用任何合适的网络协议进行通信,包括在本申请提交日尚未开发出的网络协议。所述网络协议例如可以包括TCP/IP协议、UDP/IP协议、HTTP协议、HTTPS协议等。当然,所述网络协议例如还可以包括在上述协议之上使用的RPC协议(Remote Procedure Call Protocol,远程过程调用协议)、REST协议(Representational State Transfer,表述性状态转移协议)等。
需要说明的是,本申请公开的报文处理方法及系统可用于金融技术领域,也可用于除金融技术领域之外的任意领域,本申请公开的报文处理方法及系统的应用领域不做限定。
具体通过下述各个实施例进行说明。
为了提高报文处理的准确性,进而提高应用系统的可维护性和运行的安全性,本实施例提供一种执行主体是报文处理系统的报文处理方法,该报文处理系统包括但不限于服务器,如图1所示,该方法具体包含有如下内容:
步骤100:接收待处理交易报文信息,该待处理交易报文信息包括:服务私有报文数据、待处理产品服务标识和待处理路由前置标识。
具体地,所述报文处理系统可以接收前端客户发送的待处理交易报文信息,所述报文处理系统可以是业务产品服务层微服务群组,所述待处理交易报文信息可以包含有服务私有报文数据、待处理产品服务标识和待处理路由前置标识;所述服务私有报文数据可以是每条交易报文信息所包含的业务相关数据,各条交易报文信息中的私有报文数据可以不同,如:交易账户、客户姓名和身份证号等;所述待处理产品服务标识为所述待处理交易报文信息中的产品服务标识,产品服务标识可以为业务产品服务层微服务群组的唯一标识,如产品服务名称,用于区分不同的业务产品服务层微服务群组;所述待处理路由前置标识为所述待处理交易报文信息中的路由前置标识,路由前置标识可以是路由前置层微服务群组的唯一标识,可以是一串字符串,用于区分不同的路由前置层微服务群组。
步骤200:根据本地内存中的上下游报文结构配置表、报文交互配置表、所述待处理产品服务标识和待处理路由前置标识,确定所述待处理交易报文信息对应的公区报文数据。
具体地,所述上下游报文结构配置表和报文交互配置表可以预先存储在报文处理系统的内存中,上下游报文结构配置表和报文交互配置表中的数据可根据实际情况进行设置;不同的业务基础服务层微服务群组对应的灰度发布和分库路由的公区报文数据均不一样;一组业务产品服务层微服务群组可以对接多个路由前置层微服务群组,因此,需要在交易报文信息中设置不同的公区报文数据。
步骤300:根据所述服务私有报文数据和公区报文数据,组装得到目标交易报文信息。
步骤400:将所述目标交易报文信息输出至所述待处理路由前置标识对应的路由前置层微服务群组。
其中,所述上下游报文结构配置表可以包含有:产品服务标识、报文配置标识、报文类型、报文结构、下游报文类型和下游报文结构之间的对应关系。所述上下游报文结构配置表的结构可以如表1所示。
表1
由上述描述可知,本实施例提供的报文处理方法,通过本地内存中的报文交互配置表和上下游报文结构配置表,对交易报文信息进行处理,能够使得交易报文信息适配多类业务基础服务层微服务群组,进而能够提高报文处理的准确性,同时能够缓解待处理交易报文信息的传输压力,以及目标交易报文信息传输的可靠性,实现目标交易报文信息的灵活配置,能够提高应用系统的可维护性和运行的安全性,能够提高应用系统的可维护性。
在现有技术中,每个业务产品服务层微服务群组为了适配不同的业务基础服务层微服务群组均需要改造自身的服务调用代码,影响开发效率,基于此,为了提升功能代码的可维护性,进一步实现公区报文数据的灵活配置,参见图2,在本申请一个实施例中,步骤200包括:
步骤201:根据所述待处理产品服务标识、待处理路由前置标识和上下游报文结构配置表,确定所述待处理交易报文信息对应的待处理报文配置标识。
具体地,每条报文配置标识可以用于确定上下游报文结构配置表中的一条记录,为记录的唯一标识;可以从所述上下游报文结构配置表中获取产品服务标识为所述待处理产品服务标识,路由前置标识为所述待处理路由前置标识的记录,将该记录中的报文配置标识作为所述待处理交易报文信息对应的报文配置标识即待处理报文配置标识。
步骤202:根据所述待处理报文配置标识和报文交互配置表,确定所述待处理交易报文信息对应的公区报文数据,所述报文交互配置表包括:报文配置标识和公区报文数据之间的对应关系。
具体地,可以从所述报文交互配置表中获取报文配置标识为所述待处理报文配置标识的记录,将该记录中的公区报文数据作为所述待处理交易报文信息对应的公区报文数据;所述报文交互配置表还可以包含有:报文配置标识、应用功能、报文区域、报文错误时处理方式、报文错误时默认数值和报文错误时预警配置等信息,报文区域为Public公共区的报文内容即为公区报文数据,报文区域为Private私有区的报文内容即为服务私有报文数据;报文交互配置表的结构可以如表2所示。
表2
由上述描述可知,本实施例提供的报文处理方法,应用预先配置的上下游报文结构配置表和报文交互配置表能够降低存储压力,能够提高确定公区报文数据的准确性,同时,能够避免对原系统的侵入性,可移植性较强。
为了进一步提高得到目标交易报文信息的可靠性,在本申请一个实施例中,步骤300包含有:
步骤301:根据所述上下游报文结构配置表和所述待处理产品服务标识,确定所述待处理交易报文信息对应的报文类型和报文结构。
具体地,可以从所述上下游报文结构配置表中获取产品服务标识为所述待处理服务标识的记录,将该记录中的报文类型作为所述待处理交易报文信息的报文类型,将该记录中的报文结构作为所述待处理交易报文信息的报文结构。
步骤302:根据所述待处理交易报文信息对应的报文类型和报文结构,解析所述待处理交易报文信息并确定其公共通讯区的位置。
步骤303:将所述公区报文数据写入所述待处理交易报文信息的公共通讯区的位置处,得到目标交易报文信息。
为了在提高报文处理的准确性的基础上,提高接下来交易过程的可靠性,在本申请一个实施例中,步骤400包含有:
步骤401:将所述目标交易报文信息输出至所述待处理路由前置标识对应的路由前置层微服务群组,以使该路由前置层微服务群组根据所述目标交易报文信息完成灰度发布和/或分库路由。
具体地,路由前置层微服务群组可以用于的系统升级时的灰度发布;同时在某些水平分库的微服务群组中,路由前置层微服务群组也可以用于进行水平分库后的交易路由计算,能够屏蔽系统升级对多个服务群组之间的影响。
为了进一步提高报文传输的可靠性,在本申请一个实施例中,在步骤400之前,还包含有:
步骤041:根据所述上下游报文结构配置表、待处理产品服务标识和待处理路由前置标识,确定所述目标交易报文信息的下游报文类型和下游报文结构。
具体地,可以从所述上下游报文结构配置表中获取产品服务标识为所述待处理产品服务标识,路由前置标识为所述待处理路由前置标识的记录,将该记录中的下游报文类型和下游报文结构作为所述目标交易报文信息的下游报文类型和下游报文结构。
步骤042:将所述目标交易报文信息的报文类型和报文结构转化为所述目标交易报文的下游报文类型和下游报文结构。
具体地,所述目标交易报文的下游报文类型为所述路由前置层微服务群组的标准报文类型,所述目标交易报文的下游报文结构为所述路由前置层微服务群组的标准报文结构。
为了进一步提高报文处理的可靠性,在本申请一个实施例中,所述的报文处理方法,还包含有:
步骤500:若存在输出失败的目标交易报文信息,则根据所述报文交互配置表确定所述目标交易报文信息的报文错误处理方式。
具体地,若所述目标交易报文信息输出至其对应的路由前置层微服务群组失败,则从所述报文交互配置表中确定所述目标交易报文信息的报文错误处理方式;所述报文错误处理方式包含有:使用默认值或返回报错;返回报错,能够及时的进行异常报错返回处理,以容错方式直接按异常配置的默认值继续处理,可以提升处理的可靠性。
步骤600:根据所述报文处理方式处理输出失败的目标交易报文。
具体地,可以将输出失败的目标交易报文对应的预警信息以邮件和短信等输出。
从软件层面来说,为了提高报文处理的准确性,进而提高应用系统的可维护性和运行的安全性,本申请提供一种用于实现所述报文处理方法中全部或部分内容的报文处理系统的实施例,参见图3,所述报文处理系统具体包含有如下内容:
接收模块10,用于接收待处理交易报文信息,该待处理交易报文信息包括:服务私有报文数据、待处理产品服务标识和待处理路由前置标识。
确定模块20,用于根据本地内存中的上下游报文结构配置表、报文交互配置表、所述待处理产品服务标识和待处理路由前置标识,确定所述待处理交易报文信息对应的公区报文数据。
组装模块30,用于根据所述服务私有报文数据和公区报文数据,组装得到目标交易报文信息。
输出模块40,用于将所述目标交易报文信息输出至所述待处理路由前置标识对应的路由前置层微服务群组。
其中,所述上下游报文结构配置表包括:产品服务标识、报文配置标识、报文类型、报文结构、下游报文类型和下游报文结构之间的对应关系。
本说明书提供的报文处理系统的实施例具体可以用于执行上述报文处理方法的实施例的处理流程,其功能在此不再赘述,可以参照上述报文处理方法实施例的详细描述。
为了进一步说明本方案,本申请提出一种报文处理系统的应用实例,参见图4,所述报文处理系统包含有:配置缓存装置1、报文解析装置2和报文转换组装装置3;其中,配置缓存装置1与报文解析装置2相连;报文转换组装装置3与配置缓存装置1、报文解析装置2相连,该报文处理系统可以设置在业务产品服务层内,报文解析装置和报文转换组装装置结合实现的功能可以相当于确定模块、组装模块和输出模块结合实现的功能,具体描述如下:
配置缓存装置1:用于定义业务基础服务层微服务群组的灰度发布和分库路由等路由组件的报文交互协议和特色化参数即报文交互配置表,业务产品服务层微服务群组的报文交互协议和报文结构信息即上下游报文结构配置表,并保存到项目配置文件中,在项目启动后初始化到内存中,供报文解析装置2和报文转换组装装置3进行高效读取操作。
报文解析装置2:用于从配置缓存装置1中读取业务产品服务层微服务群组的上下游报文结构配置表,在业务产品服务层微服务群组发送报文前解析报文信息,在原有报文信息中增加用于与业务基础服务层微服务群组的灰度发布和分库路由等路由组件交互信息的公共通讯区。
报文转换组装装置3:用于从配置缓存装置1中读取业务基础服务层微服务群组的灰度发布和分库路由等路由组件的报文交互配置表;根据报文解析装置2中执行完成输出的加工后报文,在公共通讯区中写入业务基础服务层微服务群组的灰度发布、分库路由等路由组件需要的信息,组装成业务基础服务层微服务群组需要的标准格式报文再返回给业务产品服务层微服务群组发送。
其中,灰度发布包含有:需要上送灰度的业务要素信息(如用户ID,白名单用户信息),路由组件根据业务要素信息和分布式配置中心中的灰度业务要素信息进行匹配,如果命中的话,则为灰度用户,将其路由到灰度节点,如果不命中,则为正常用户,将其路由到正常节点;分库路由:分库是按某一业务要素分库的,比如账号或卡号等,上层服务群组需要上送分库键,路由组件根据键值匹配进而转发给对应的分库的应用服务器节点,由对应的应用服务器节点访问其绑定的数据库节点。
图5是配置缓存装置1的结构示意图,如图5所示,所述配置缓存装置1包括报文协议配置单元11、报文结构配置单元12和报文参数配置单元13,其中:
报文协议配置单元11:用于配置业务产品服务层微服务群组的发送报文协议即报文交互协议,比如是HTTP或者是RPC。
报文结构配置单元12:用于配置业务产品服务层微服务群组的上下游报文结构配置表。
报文参数配置单元13:用于配置业务基础服务层微服务群组的路由组件需要的报文交互配置表。
图6是报文解析装置的结构示意图,如图6所示,所述报文解析装置2包括报文解析单元21和报文拆分单元22,其中:
报文解析单元21:用于接收和解析业务产品服务层微服务群组发送的上下游报文结构配置表,输出报文拆分单元22运行时所需要的配置信息。
报文拆分单元22:用于执行单元根据报文解析单元21输入的配置信息准备不同的执行分支及相关初始化工作,在原有报文信息中拆分出一个公共通讯区。
图7是报文转换组装装置3的结构示意图,如图7所示,所述报文转换组装装置3包括报文转换组装单元31和报文输出单元32,其中:
报文转换组装单元31:用于接收拆分后的报文,将业务基础服务层微服务群组的特色化参数加入拆分后的报文公共通讯区,并转换成原报文格式。例如,RPC调用是采用如下方式:
private ISysParameterService sysParameterService
Response response=sysParameterService.getValue(item)
item可以是一个对象也可以是一个数据结构类型(Map),在原有报文对象开辟报文公共通讯区并加入特色化参数后又转换回原有对象和类型格式。
报文输出单元32:用于将转换后的报文再传输给业务产品服务层微服务群组报文发起方。
结合上述报文处理系统,本申请提供一种报文处理方法的应用实例,参见图8,具体描述如下:
步骤S101:各个微服务群组启动。
步骤S102:配置信息初始化;即业务产品服务层微服务群组加载配置缓存装置1,配置缓存装置1将项目配置文件中的信息初始化。
步骤S103:组装待发送的报文;业务产品服务层微服务群组组装待发送的报文信息。
其中,业务产品服务层微服务群组的服务消费者在接口发起调用前会组装报文信息,格式一般是json格式,也可以是其他格式,如xml格式。
步骤S104:读取缓存中的报文结构配置信息;即报文解析装置2读取配置缓存装置1中的报文结构配置信息即上下游报文结构配置表。
步骤S105:在原有报文信息中开辟公共通讯区;即报文解析装置2解析待发送的报文信息,在原有报文信息中开辟公共通讯区。
步骤S106:读取缓存中的路由前置层特色化参数配置信息;即报文转换组装装置3读取配置缓存装置1中的报文交互配置表。
步骤S107:组装和转换待发送的报文信息;即报文转换组装装置3组装和转换待发送的报文信息。
步骤S108:返回业务产品服务层微服务群组组装后的报文;即报文转换组装装置3返回业务产品服务层微服务群组组装后的报文。
步骤S109:发送报文至业务基础服务层微服务群组;即业务产品服务层微服务群组发送报文至业务基础服务层微服务群组。
具体地,业务产品服务层微服务群组可以发送报文至业务基础服务层微服务群组的路由前置层微服务群组。
步骤S110:识别公共通讯区的报文内容进行路由计算,进而进行灰度发布或分库路由;业务基础服务层微服务群组识别公共通讯区的报文内容,进行路由计算,进而进行灰度发布或分库路由。
在本申请另一个应用实例中,报文处理方法具体包含有:
步骤1):配置缓存装置1解析用户自定义的项目配置文件,将用户自定义的项目配置文件缓存在本地内存中。
步骤2):报文解析装置2根据步骤1)中的用户自定义的项目配置文件,识别报文交互协议并将报文拆分为公共通讯区和报文交互私有区;可以根据表2中的报文内容,将报文拆分为Public公共通讯区和Private私有区;报文交互私有区用于存储下游服务提供方需要的业务要素信息,如开户报文的客户信息;配置方可以只配置私有区,报文解析装置2会自动补上配置的公共通讯区的内容;能够减少上层应用的改造,适配不同下游的改造量。
步骤3):报文转换组装装置3,在步骤2)中报文解析完成后,执行服务报文转换组装工作,根据步骤1)中的用户自定义的报文交互配置,将上下游各个微服务群组交互的特色化参数加入公共通讯区中并返回给路由前置层微服务群组。
由上述描述可知,本申请提供的报文处理方法及系统,能够提高报文处理的准确性,进而能够提高应用系统的可维护性和运行的安全性;具体地,通过配置上层业务产品服务层微服务群组报文协议和结构和下层业务基础服务层微服务群组报文参数并自动组装,帮助业务产品服务层微服务群组和业务基础服务层微服务群组在业务功能无需关注对方系统的技术栈、报文交互格式和上下游依赖参数。其优点如下:1、通过SIDECAR模式和系统对接,对原系统的侵入性极小,可移植性较强;2、可定制配置系统的上下游报文结构配置表、报文交互配置表,在降低各微服务群组之间的耦合度的同时,能够提升各微服务群组的可维护性;3、配置存储于内存中,报文转换直接读取内存数据,能够提高访问和转换性能。
从硬件层面来说,为了提高报文处理的准确性,进而提高应用系统的可维护性和运行的安全性,本申请提供一种用于实现所述报文处理方法中的全部或部分内容的电子设备的实施例所述电子设备具体包含有如下内容:
处理器(processor)、存储器(memory)、通信接口(Communications Interface)和总线;其中,所述处理器、存储器、通信接口通过所述总线完成相互间的通信;所述通信接口用于实现所述报文处理系统以及用户终端等相关设备之间的信息传输;该电子设备可以是台式计算机、平板电脑及移动终端等,本实施例不限于此。在本实施例中,该电子设备可以参照实施例用于实现所述报文处理方法的实施例及用于实现所述报文处理系统的实施例进行实施,其内容被合并于此,重复之处不再赘述。
图9为本申请实施例的电子设备9600的系统构成的示意框图。如图9所示,该电子设备9600可以包括中央处理器9100和存储器9140;存储器9140耦合到中央处理器9100。值得注意的是,该图9是示例性的;还可以使用其他类型的结构,来补充或代替该结构,以实现电信功能或其他功能。
在本申请一个或多个实施例中,报文处理功能可以被集成到中央处理器9100中。其中,中央处理器9100可以被配置为进行如下控制:
步骤100:接收待处理交易报文信息,该待处理交易报文信息包括:服务私有报文数据、待处理产品服务标识和待处理路由前置标识。
步骤200:根据本地内存中的上下游报文结构配置表、报文交互配置表、所述待处理产品服务标识和待处理路由前置标识,确定所述待处理交易报文信息对应的公区报文数据。
步骤300:根据所述服务私有报文数据和公区报文数据,组装得到目标交易报文信息。
步骤400:将所述目标交易报文信息输出至所述待处理路由前置标识对应的路由前置层微服务群组。
从上述描述可知,本申请的实施例提供的电子设备,能够提高报文处理的准确性,进而提高应用系统的可维护性和运行的安全性。
在另一个实施方式中,报文处理系统可以与中央处理器9100分开配置,例如可以将报文处理系统配置为与中央处理器9100连接的芯片,通过中央处理器的控制来实现报文处理功能。
如图9所示,该电子设备9600还可以包括:通信模块9110、输入单元9120、音频处理器9130、显示器9160、电源9170。值得注意的是,电子设备9600也并不是必须要包括图9中所示的所有部件;此外,电子设备9600还可以包括图9中没有示出的部件,可以参考现有技术。
如图9所示,中央处理器9100有时也称为控制器或操作控件,可以包括微处理器或其他处理器装置和/或逻辑装置,该中央处理器9100接收输入并控制电子设备9600的各个部件的操作。
其中,存储器9140,例如可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其它合适装置中的一种或更多种。可储存上述与失败有关的信息,此外还可存储执行有关信息的程序。并且中央处理器9100可执行该存储器9140存储的该程序,以实现信息存储或处理等。
输入单元9120向中央处理器9100提供输入。该输入单元9120例如为按键或触摸输入装置。电源9170用于向电子设备9600提供电力。显示器9160用于进行图像和文字等显示对象的显示。该显示器例如可为LCD显示器,但并不限于此。
该存储器9140可以是固态存储器,例如,只读存储器(ROM)、随机存取存储器(RAM)、SIM卡等。还可以是这样的存储器,其即使在断电时也保存信息,可被选择性地擦除且设有更多数据,该存储器的示例有时被称为EPROM等。存储器9140还可以是某种其它类型的装置。存储器9140包括缓冲存储器9141(有时被称为缓冲器)。存储器9140可以包括应用/功能存储部9142,该应用/功能存储部9142用于存储应用程序和功能程序或用于通过中央处理器9100执行电子设备9600的操作的流程。
存储器9140还可以包括数据存储部9143,该数据存储部9143用于存储数据,例如联系人、数字数据、图片、声音和/或任何其他由电子设备使用的数据。存储器9140的驱动程序存储部9144可以包括电子设备的用于通信功能和/或用于执行电子设备的其他功能(如消息传送应用、通讯录应用等)的各种驱动程序。
通信模块9110即为经由天线9111发送和接收信号的发送机/接收机9110。通信模块(发送机/接收机)9110耦合到中央处理器9100,以提供输入信号和接收输出信号,这可以和常规移动通信终端的情况相同。
基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块9110,如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机)9110还经由音频处理器9130耦合到扬声器9131和麦克风9132,以经由扬声器9131提供音频输出,并接收来自麦克风9132的音频输入,从而实现通常的电信功能。音频处理器9130可以包括任何合适的缓冲器、解码器、放大器等。另外,音频处理器9130还耦合到中央处理器9100,从而使得可以通过麦克风9132能够在本机上录音,且使得可以通过扬声器9131来播放本机上存储的声音。
上述描述可知,本申请的实施例提供的电子设备,能够提高报文处理的准确性,进而提高应用系统的可维护性和运行的安全性。
本申请的实施例还提供能够实现上述实施例中的报文处理方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的报文处理方法的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:
步骤100:接收待处理交易报文信息,该待处理交易报文信息包括:服务私有报文数据、待处理产品服务标识和待处理路由前置标识。
步骤200:根据本地内存中的上下游报文结构配置表、报文交互配置表、所述待处理产品服务标识和待处理路由前置标识,确定所述待处理交易报文信息对应的公区报文数据。
步骤300:根据所述服务私有报文数据和公区报文数据,组装得到目标交易报文信息。
步骤400:将所述目标交易报文信息输出至所述待处理路由前置标识对应的路由前置层微服务群组。
从上述描述可知,本申请实施例提供的计算机可读存储介质,能够提高报文处理的准确性,进而提高应用系统的可维护性和运行的安全性。
本申请中上述方法的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。相关之处参见方法实施例的部分说明即可。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本申请中应用了具体实施例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种报文处理方法,其特征在于,包括:
接收待处理交易报文信息,该待处理交易报文信息包括:服务私有报文数据、待处理产品服务标识和待处理路由前置标识;
根据本地内存中的上下游报文结构配置表、报文交互配置表、所述待处理产品服务标识和待处理路由前置标识,确定所述待处理交易报文信息对应的公区报文数据;
根据所述服务私有报文数据和公区报文数据,组装得到目标交易报文信息;
将所述目标交易报文信息输出至所述待处理路由前置标识对应的路由前置层微服务群组。
2.根据权利要求1所述的报文处理方法,其特征在于,所述上下游报文结构配置表包括:产品服务标识、报文配置标识、报文类型、报文结构、下游报文类型和下游报文结构之间的对应关系。
3.根据权利要求1所述的报文处理方法,其特征在于,所述根据本地内存中的上下游报文结构配置表、报文交互配置表、所述待处理产品服务标识和待处理路由前置标识,确定所述待处理交易报文信息对应的公区报文数据,包括:
根据所述待处理产品服务标识、待处理路由前置标识和上下游报文结构配置表,确定所述待处理交易报文信息对应的待处理报文配置标识;
根据所述待处理报文配置标识和报文交互配置表,确定所述待处理交易报文信息对应的公区报文数据,所述报文交互配置表包括:报文配置标识和公区报文数据之间的对应关系。
4.根据权利要求1所述的报文处理方法,其特征在于,所述根据所述服务私有报文数据和公区报文数据,组装得到目标交易报文信息,包括:
根据所述上下游报文结构配置表和所述待处理产品服务标识,确定所述待处理交易报文信息对应的报文类型和报文结构;
根据所述待处理交易报文信息对应的报文类型和报文结构,解析所述待处理交易报文信息并确定其公共通讯区的位置;
将所述公区报文数据写入所述待处理交易报文信息的公共通讯区的位置处,得到目标交易报文信息。
5.根据权利要求1所述的报文处理方法,其特征在于,所述将所述目标交易报文信息输出至所述待处理路由前置标识对应的路由前置层微服务群组,包括:
将所述目标交易报文信息输出至所述待处理路由前置标识对应的路由前置层微服务群组,以使该路由前置层微服务群组根据所述目标交易报文信息完成灰度发布和/或分库路由。
6.根据权利要求1所述的报文处理方法,其特征在于,在所述将所述目标交易报文信息输出至所述待处理路由前置标识对应的路由前置层微服务群组之前,还包括:
根据所述上下游报文结构配置表、待处理产品服务标识和待处理路由前置标识,确定所述目标交易报文信息的下游报文类型和下游报文结构;
将所述目标交易报文信息的报文类型和报文结构转化为所述目标交易报文的下游报文类型和下游报文结构。
7.一种报文处理系统,其特征在于,包括:
接收模块,用于接收待处理交易报文信息,该待处理交易报文信息包括:服务私有报文数据、待处理产品服务标识和待处理路由前置标识;
确定模块,用于根据本地内存中的上下游报文结构配置表、报文交互配置表、所述待处理产品服务标识和待处理路由前置标识,确定所述待处理交易报文信息对应的公区报文数据;
组装模块,用于根据所述服务私有报文数据和公区报文数据,组装得到目标交易报文信息;
输出模块,用于将所述目标交易报文信息输出至所述待处理路由前置标识对应的路由前置层微服务群组。
8.根据权利要求7所述的报文处理系统,其特征在于,所述上下游报文结构配置表包括:产品服务标识、报文配置标识、报文类型、报文结构、下游报文类型和下游报文结构之间的对应关系。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至6任一项所述的报文处理方法。
10.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,所述指令被执行时实现权利要求1至6任一项所述的报文处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110127990.5A CN112866268B (zh) | 2021-01-29 | 2021-01-29 | 报文处理方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110127990.5A CN112866268B (zh) | 2021-01-29 | 2021-01-29 | 报文处理方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112866268A true CN112866268A (zh) | 2021-05-28 |
CN112866268B CN112866268B (zh) | 2023-04-07 |
Family
ID=75986950
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110127990.5A Active CN112866268B (zh) | 2021-01-29 | 2021-01-29 | 报文处理方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112866268B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115756771A (zh) * | 2022-10-19 | 2023-03-07 | 中电金信软件有限公司 | 微服务化的前置系统、工作流调度方法及装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019149019A1 (zh) * | 2018-01-30 | 2019-08-08 | 深圳壹账通智能科技有限公司 | 数据交互方法、装置、计算机设备和存储介质 |
CN110189229A (zh) * | 2018-05-16 | 2019-08-30 | 杜鹏飞 | 互联网保险核心业务系统 |
CN110675159A (zh) * | 2019-09-29 | 2020-01-10 | 中国工商银行股份有限公司 | 金融市场交易事前风险控制方法、系统及电子设备 |
CN111724144A (zh) * | 2020-07-17 | 2020-09-29 | 江苏苏宁银行股份有限公司 | 一种银行交易工作流引擎系统 |
CN111786885A (zh) * | 2020-06-23 | 2020-10-16 | 中国工商银行股份有限公司 | 分布式全链路灰度路由方法及装置 |
CN112000365A (zh) * | 2020-08-24 | 2020-11-27 | 百度时代网络技术(北京)有限公司 | 基于微服务架构的服务网格配置方法、装置、设备和介质 |
CN112118565A (zh) * | 2020-08-14 | 2020-12-22 | 金蝶医疗软件科技有限公司 | 多租户服务灰度发布方法、装置、计算机设备和存储介质 |
WO2020264431A1 (en) * | 2019-06-28 | 2020-12-30 | Amazon Technologies, Inc. | Connection pooling for scalable network services |
-
2021
- 2021-01-29 CN CN202110127990.5A patent/CN112866268B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019149019A1 (zh) * | 2018-01-30 | 2019-08-08 | 深圳壹账通智能科技有限公司 | 数据交互方法、装置、计算机设备和存储介质 |
CN110189229A (zh) * | 2018-05-16 | 2019-08-30 | 杜鹏飞 | 互联网保险核心业务系统 |
WO2020264431A1 (en) * | 2019-06-28 | 2020-12-30 | Amazon Technologies, Inc. | Connection pooling for scalable network services |
CN110675159A (zh) * | 2019-09-29 | 2020-01-10 | 中国工商银行股份有限公司 | 金融市场交易事前风险控制方法、系统及电子设备 |
CN111786885A (zh) * | 2020-06-23 | 2020-10-16 | 中国工商银行股份有限公司 | 分布式全链路灰度路由方法及装置 |
CN111724144A (zh) * | 2020-07-17 | 2020-09-29 | 江苏苏宁银行股份有限公司 | 一种银行交易工作流引擎系统 |
CN112118565A (zh) * | 2020-08-14 | 2020-12-22 | 金蝶医疗软件科技有限公司 | 多租户服务灰度发布方法、装置、计算机设备和存储介质 |
CN112000365A (zh) * | 2020-08-24 | 2020-11-27 | 百度时代网络技术(北京)有限公司 | 基于微服务架构的服务网格配置方法、装置、设备和介质 |
Non-Patent Citations (1)
Title |
---|
丁乙等: "面向军用微服务的服务网格架构研究与设计", 《指挥信息系统与技术》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115756771A (zh) * | 2022-10-19 | 2023-03-07 | 中电金信软件有限公司 | 微服务化的前置系统、工作流调度方法及装置 |
CN115756771B (zh) * | 2022-10-19 | 2023-09-29 | 中电金信软件有限公司 | 微服务化的前置系统、工作流调度方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112866268B (zh) | 2023-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7596369B2 (en) | Translation of messages between media types | |
CN111031058A (zh) | 基于WebSocket的分布式服务器集群交互方法及装置 | |
US20070239895A1 (en) | Cross-platform push of various media types | |
CN112163946A (zh) | 基于分布式交易系统的账务处理方法及装置 | |
US11323562B2 (en) | Communication method for processing crank call | |
CN110675159A (zh) | 金融市场交易事前风险控制方法、系统及电子设备 | |
CN109710333A (zh) | 寄宿应用的处理方法、设备及计算机可读存储介质 | |
CN110764881A (zh) | 分布式系统后台重试方法及装置 | |
CN114338793B (zh) | 消息推送方法、装置、电子设备及可读存储介质 | |
EP4035316A1 (en) | Enhancing messages with dynamic content | |
KR100738040B1 (ko) | 개방형 모바일 비즈니스 지원 시스템의 api 제공 방법 | |
CN112866268B (zh) | 报文处理方法及系统 | |
US20030199282A1 (en) | Mobile telephone active messaging system | |
CN113282590A (zh) | 基于5g消息的接口联调方法及装置 | |
CN110136712A (zh) | 实现智能语音ai功能的方法及装置 | |
CN101341767A (zh) | 移动动画消息服务方法和系统及终端 | |
US10178230B1 (en) | Methods and systems for communicating supplemental data to a callee via data association with a software-as-a-service application | |
CN109005163B (zh) | 一种http动态请求服务调用方法 | |
CN113055494B (zh) | 通讯方法及通讯装置 | |
US20140346225A1 (en) | Platform for modeling and embedding business scenarios in bar codes | |
CN113438251A (zh) | 协议转换方法、装置及系统 | |
CN113159752A (zh) | 转账交易凭证生成方法及装置 | |
CN113672488A (zh) | 日志文本处理方法及装置 | |
CN112396511A (zh) | 分布式风控变量数据处理方法、装置及系统 | |
CN103605594A (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 |