CN113472880A - 微服务架构中基于数据库配置的网关处理方法及系统 - Google Patents
微服务架构中基于数据库配置的网关处理方法及系统 Download PDFInfo
- Publication number
- CN113472880A CN113472880A CN202110737547.XA CN202110737547A CN113472880A CN 113472880 A CN113472880 A CN 113472880A CN 202110737547 A CN202110737547 A CN 202110737547A CN 113472880 A CN113472880 A CN 113472880A
- Authority
- CN
- China
- Prior art keywords
- service
- external system
- internal micro
- format
- request
- 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
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/66—Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
-
- 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
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
-
- 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/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Computer Security & Cryptography (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种微服务架构中基于数据库配置的网关处理方法及系统,涉及网络安全领域,该方法包括:根据预先配置的外部系统请求与内部微服务请求报文栏位的关系,将当前外部系统请求转换为内部微服务请求报文格式;根据当前外部系统请求Url及预先配置的外部系统请求Url与内部微服务的关系确定当前内部微服务;根据内部微服务请求格式报文及当前微服务信息获得内部微服务响应报文;根据预先配置的内部微服务响应与外部系统响应报文栏位的关系,将获取的响应报文格式转换为外部系统需求格式。本发明可以实现基于配置的外部系统与内部微服务的对应关系提供微服务架构中的网关服务,降低了开发和测试的工作量,保证网关系统对外服务的连续性。
Description
技术领域
本发明涉及网络安全技术领域,尤其涉及一种微服务架构中基于数据库配置的网关处理方法及系统。
背景技术
本部分旨在为权利要求书中陈述的本发明实施例提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
发明内容
本发明实施例提供一种微服务架构中基于数据库配置的网关处理方法,用以实现基于配置的外部系统与内部微服务之间的对应关系提供微服务架构中的网关服务,该方法包括:
根据预先配置的外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,将当前外部系统请求报文格式转换为内部微服务请求报文格式,得到内部微服务请求格式报文;
根据当前外部系统请求的Url,以及预先配置的外部系统请求Url与内部微服务之间的对应关系,确定当前外部系统请求对应的内部微服务;
根据内部微服务请求格式报文,以及当前外部系统请求对应的内部微服务信息,引用当前外部系统请求对应的内部微服务,获得内部微服务响应报文;
根据预先配置的内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系,将内部微服务响应报文的格式转换为外部系统响应报文格式,得到外部系统响应格式报文。
本发明实施例还提供一种微服务架构中基于数据库配置的网关处理系统,用以实现基于配置的外部系统与内部微服务之间的对应关系提供微服务架构中的网关服务,该系统包括:
第一转换单元,用于根据预先配置的外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,将当前外部系统请求报文格式转换为内部微服务请求报文格式,得到内部微服务请求格式报文;
确定单元,用于根据当前外部系统请求的Url,以及预先配置的外部系统请求Url与内部微服务之间的对应关系,确定当前外部系统请求对应的内部微服务;
处理单元,用于根据内部微服务请求格式报文,以及当前外部系统请求对应的内部微服务信息,引用当前外部系统请求对应的内部微服务,获得内部微服务响应报文;
第二转换单元,用于根据预先配置的内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系,将内部微服务响应报文的格式转换为外部系统响应报文格式,得到外部系统响应格式报文。
本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述微服务架构中基于数据库配置的网关处理方法。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述微服务架构中基于数据库配置的网关处理方法的计算机程序。
本发明实施例中,微服务架构中基于数据库配置的网关处理方案,与现有技术中网关系统每新增或者修改一个接口,都需要先获取内部Dubbo微服务提供的工程jar包,再根据该接口编写request、response报文处理的代码,工作量大,需要停机升级版本,无法连续对外提供服务的技术方案相比,通过:根据预先配置的外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,将当前外部系统请求报文格式转换为内部微服务请求报文格式,得到内部微服务请求格式报文;根据当前外部系统请求的Url,以及预先配置的外部系统请求Url与内部微服务之间的对应关系,确定当前外部系统请求对应的内部微服务;根据内部微服务请求格式报文,以及当前外部系统请求对应的内部微服务信息,引用当前外部系统请求对应的内部微服务,获得内部微服务响应报文;根据预先配置的内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系,将内部微服务响应报文的格式转换为外部系统响应报文格式,得到外部系统响应格式报文,可以实现基于配置的外部系统与内部微服务之间的对应关系提供微服务架构中的网关服务,在新增或者修改接口的时候,无需开发新的代码jar包,无需停机升级版本,只需要新增或修改相应的对应关系,即可完成接口的新增或者修改,降低工作人员的开发和测试的工作量,同时保证网关系统对外服务的稳定连续运营。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1为本发明实施例中微服务架构中基于数据库配置的网关处理方法的流程示意图;
图2为本发明另一实施例中微服务架构中基于数据库配置的网关处理方法的流程示意图;
图3为本发明实施例中更新相应的对应关系的流程示意图;
图4为本发明实施例中查询相应的对应关系的流程示意图;
图5为本发明实施例中微服务架构中基于数据库配置的网关处理系统的结构示意图;
图6为本发明另一实施例中微服务架构中基于数据库配置的网关处理系统的结构示意图;
图7为本发明实施例中更新相应的对应关系的结构示意图;
图8为本发明实施例中查询相应的对应关系的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
在介绍本发明实施例之前,首先对本发明实施例涉及的名词进行介绍。
网关系统(网关处理系统)是一个位于外部系统和内部Dubbo微服务之间的报文处理系统,主要用于解析和转换外部系统发送的request请求,然后引用内部Dubbo微服务,并将内部Dubbo微服务的处理结果转换为外部系统需求的response响应。
本发明实施例提出了一种微服务架构中基于数据库配置的网关处理方案,该方案基于配置的内部Dubbo微服务引用方式,通过维护Url,Req,Res三张数据表,其中:Url数据表记录外部系统请求的Url和内部Dubbo微服务的对应关系,Req数据表记录外部请求报文栏位和内部微服务请求报文栏位之间的对应关系,Res数据表记录内部微服务响应报文栏位和外部系统需求的响应报文栏位之间的对应关系,这样在新增或者修改接口的时候,只需要通过管理端修改对应的数据表即可,不需要开发新的代码jar包,也就不需要停机升级版本。下面对该微服务架构中基于数据库配置的网关处理方案进行详细介绍如下。
图1为本发明实施例中微服务架构中基于数据库配置的网关处理方法的流程示意图,如图1所示,该方法包括如下步骤:
步骤102:根据预先配置的外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,将当前外部系统请求报文格式转换为内部微服务请求报文格式,得到内部微服务请求格式报文;
步骤103:根据当前外部系统请求的Url,以及预先配置的外部系统请求Url与内部微服务之间的对应关系,确定当前外部系统请求对应的内部微服务;
步骤104:根据内部微服务请求格式报文,以及当前外部系统请求对应的内部微服务信息,引用当前外部系统请求对应的内部微服务,获得内部微服务响应报文;
步骤105:根据预先配置的内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系,将内部微服务响应报文的格式转换为外部系统响应报文格式,得到外部系统响应格式报文。
本发明实施例提供的微服务架构中基于数据库配置的网关处理方法可以实现基于配置的外部系统与内部微服务之间的对应关系提供微服务架构中的网关服务,在新增或者修改接口的时候,无需开发新的代码jar包,无需停机升级版本,只需要新增或修改相应的对应关系,即可完成接口的新增或者修改,降低工作人员的开发和测试的工作量,同时保证网关系统对外服务的稳定连续运营。下面对该方法涉及的各个步骤进行详细介绍如下。
一、首先,介绍在实施本发明之前预先配置的步骤。
将系统(外部系统和内部微服务)之间的对应关系(三个对应关系:外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,外部系统请求Url与内部微服务之间的对应关系,内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系)存储于数据表(为提高查询效率可以将数据加载进Redis中):将外部系统请求Url和内部Dubbo微服务的服务名、分组、版本号和方法等信息一一对应存储于Url数据表(第二数据表);将外部系统的请求报文格式(比如XML、JSON等)栏位和网关内部Dubbo微服务的请求报文栏位,一一对应存储于Req数据表(第一数据表);将内部Dubbo微服务的响应报文栏位和外部系统需求的响应报文格式栏位,一一对应存储于Res数据表(第三数据表)。
在一个实施例中,所述内部微服务可以为内部Dubbo微服务。
二、接着,介绍步骤101,接收发起请求的步骤。
在一个实施例中,如图2所示,上述基于数据库配置的网关处理方法还可以包括:步骤101:接收当前外部系统请求。
具体实施时,外部系统发起请求(比如手机App发起,Url为:http://ip:port/dc-agency-gateway/merchantQrCreate),比如业务报文如下:
三、接着,介绍上述步骤102。
在一个实施例中,如图2所示,根据预先配置的外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,将当前外部系统请求报文格式转换为内部微服务请求报文格式,得到内部微服务请求格式报文,可以包括:
步骤1021:将当前外部系统请求报文格式转换为HashMap格式;
步骤1022:根据预先配置的外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,将HashMap格式的外部系统请求报文转换为内部微服务请求格式报文。
在上述步骤1021中,网关系统将上述请求(当前外部系统请求)转换为HashMap格式,比如转换结果如下:
{root={MsgHeader={Sender=900008,MsgFormat=XML,SndDtTm=2020-06-0110:04:44},MsgBody={ProductName=缴纳,TotalAmount=1,MerOrderNo=200601100444a04z05005608XO,Currency=CNY}}}。
在上述步骤1022中,根据Req数据表(第一数据表,即外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系)将HashMap格式逐个栏位转换为内部Dubbo微服务要求的格式,比如Req数据表如下表1所示:
表1
比如转换后的报文如下:
{merOrderNo=200601100444a04z05005608XO,productName=缴纳,totalAmount=1,currency=CNY}。
四、接着,介绍上述步骤103。
在上述步骤103中,根据Url数据表(第二数据表,即外部系统请求Url与内部微服务之间的对应关系),查询当前外部系统请求对应的内部Dubbo微服务的服务名、分组、版本号和方法等信息(当前外部系统请求对应的内部微服务信息):
比如Url表信息如下表2所示:
表2
五、接着,介绍上述步骤104。
在上述步骤104中,根据转换后得到的报文(内部微服务请求格式报文)和上面步骤得到的服务名、分组、版本号和方法等信息(当前外部系统请求对应的内部微服务信息)泛化引用内部Dubbo微服务,获得内部响应结果(内部微服务响应报文):
比如内部Dubbo微服务响应结果如下:
{merOrderNo=null,totalAmount=null,returnCode=10122007,returnMsg=商户信息不存在,currency=null}。
六、接着,介绍上述步骤105。
在一个实施例中,如图2所示,根据预先配置的内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系,将内部微服务响应报文的格式转换为外部系统响应报文格式,得到外部系统响应格式报文,可以包括:
步骤1051:根据预先配置的内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系,将内部微服务响应报文的格式转换为HashMap格式,得到HashMap格式的内部微服务响应报文;
步骤1052:将HashMap格式的内部微服务响应报文转换为外部系统响应格式报文。
在上述步骤1051中,根据Res数据表(第三数据表,即内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系),将内部响应结果转换为HashMap格式:
比如Res表信息如下表3所示:
表3
比如HashMap转换结果如下:
{MsgHeader={RespCode=00000006,RespInf=商户信息不存在},MsgBody={TotalAmount=null,MerOrderNo=null,Currency=null}}。
在上述步骤1052中,将HashMap格式的报文转换为外部系统需求的格式:
比如外部系统需求XML的格式(外部系统响应报文格式)如下:
七、接着,介绍步骤106。
在一个实施例中,如图2所示,上述基于数据库配置的网关处理方法还可以包括:
步骤106:将外部系统响应格式报文反馈给外部系统。
八、接着,介绍本发明实施例进一步的优选步骤。
在一个实施例中,如图3所示,上述基于数据库配置的网关处理方法还可以包括:
步骤201:接收对外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,外部系统请求的Url与内部微服务之间的对应关系,和/或内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系的更新请求;
步骤202:根据所述更新请求,更新外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,外部系统请求的Url与内部微服务之间的对应关系,和/或内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系。
具体实施时,在新增或者修改接口的时候,通过管理端(可用于管理Url、Req、Res数据表的Web页面)新增或者修改对应的数据表,即可完成接口的新增或者修改,不需要开发新的代码jar包,也就不需要停机升级版本,便于对外服务的连续运营。即可实现利用数据表的配置来控制外部系统请求的Url和内部Dubbo微服务的对应关系以及不同格式报文栏位的对应关系。
在一个实施例中,如图4所示,上述基于数据库配置的网关处理方法还可以包括:
步骤301:接收对外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,外部系统请求的Url与内部微服务之间的对应关系,和/或内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系的查询请求;
步骤302:根据所述查询请求,反馈对外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,外部系统请求的Url与内部微服务之间的对应关系,和/或内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系的查询结果。
具体实施时,本发明实施例提了供查询Url数据表,Req数据表,Res数据表的功能,灵活、方便。
具体实施时,本发明实施例提供了数据访问模块:用于提供查询和维护Url数据表,Req数据表,Res数据表的功能。
具体实施时,本发明实施例提供了前置接入模块:接收外部系统请求和发送内部响应结果,例如下文提到的外部请求接收单元和提供单元,同时为管理端模块提供数据表维护接口,例如下文提到的更新请求接收单元,更新单元,查询请求接收单元和反馈单元。
具体实施时,本发明实施例提供了业务处理模块:根据数据访问模块的查询结果,将外部系统请求报文格式转换为内部Dubbo微服务的请求报文格式,并将内部Dubbo微服务的响应结果转换为外部系统需求的响应报文格式,例如第一转换单元和第二转换单元。
具体实施时,本发明实施例提供了公共模块:用于提供内部Dubbo微服务的泛化引用(如上文提到的引用当前外部系统请求对应的内部微服务),Redis读写操作(例如上文提到的为提高查询效率可以将数据(三个对应关系,即数据表)加载进Redis中),格式转换(比如,将XML转换为HashMap)等功能。
具体实施时,本发明实施例提供了管理端模块:用于管理Url、Req、Res数据表的Web页面。
综上,本发明实施例提供的微服务架构中基于数据库配置的网关处理方法实现了:
1.利用数据表(对应关系)的配置来控制外部系统请求的Url和内部Dubbo微服务的对应关系以及不同格式报文栏位的对应关系。
2.通过管理端管理数据表来完成新增或者修改接口。
3.通过设置不同的模块(单元,详见下面实施例所述),便于组织代码和功能,便于高内聚,低耦合的系统建设。
综上,本发明实施例在新增或者修改接口的时候,只需要维护对应的数据表(对应关系)即可,不需要开发新的代码jar包,这样可以节省开发人员的工作量;同时不需要停机升级版本,也就不影响对外提供服务。
本发明实施例中还提供了一种微服务架构中基于数据库配置的网关处理装置,如下面的实施例所述。由于该装置解决问题的原理与微服务架构中基于数据库配置的网关处理方法相似,因此该装置的实施可以参见微服务架构中基于数据库配置的网关处理方法的实施,重复之处不再赘述。
图5为本发明实施例中微服务架构中基于数据库配置的网关处理装置的结构示意图,如图5所示,该装置包括:
第一转换单元02,用于根据预先配置的外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,将当前外部系统请求报文格式转换为内部微服务请求报文格式,得到内部微服务请求格式报文;
确定单元03,用于根据当前外部系统请求的Url,以及预先配置的外部系统请求Url与内部微服务之间的对应关系,确定当前外部系统请求对应的内部微服务;
处理单元04,用于根据内部微服务请求格式报文,以及当前外部系统请求对应的内部微服务信息,引用当前外部系统请求对应的内部微服务,获得内部微服务响应报文;
第二转换单元05,用于根据预先配置的内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系,将内部微服务响应报文的格式转换为外部系统响应报文格式,得到外部系统响应格式报文。
在一个实施例中,所述第一转换单元具体用于:
将当前外部系统请求报文格式转换为HashMap格式;
根据预先配置的外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,将HashMap格式的外部系统请求报文转换为内部微服务请求格式报文。
在一个实施例中,所述第二转换单元具体用于:
根据预先配置的内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系,将内部微服务响应报文的格式转换为HashMap格式,得到HashMap格式的内部微服务响应报文;
将HashMap格式的内部微服务响应报文转换为外部系统响应格式报文。
在一个实施例中,如图7所示,上述微服务架构中基于数据库配置的网关处理系统还可以包括:
更新请求接收单元21,用于接收对外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,外部系统请求的Url与内部微服务之间的对应关系,和/或内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系的更新请求;
更新单元22,用于根据所述更新请求,更新外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,外部系统请求的Url与内部微服务之间的对应关系,和/或内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系。
在一个实施例中,如图8所示,上述微服务架构中基于数据库配置的网关处理系统还可以包括:
查询请求接收单元31,用于接收对外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,外部系统请求的Url与内部微服务之间的对应关系,和/或内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系的查询请求;
反馈单元32,用于根据所述查询请求,反馈对外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,外部系统请求的Url与内部微服务之间的对应关系,和/或内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系的查询结果。
在一个实施例中,如图6所示,上述微服务架构中基于数据库配置的网关处理系统还可以包括:
外部请求接收单元01,用于接收当前外部系统请求;
提供单元06,用于将外部系统响应格式报文反馈给外部系统。
本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述微服务架构中基于数据库配置的网关处理方法。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述微服务架构中基于数据库配置的网关处理方法的计算机程序。
本发明实施例中,微服务架构中基于数据库配置的网关处理方案,与现有技术中网关系统每新增或者修改一个接口,都需要先获取内部Dubbo微服务提供的工程jar包,再根据该接口编写request、response报文处理的代码,工作量大,需要停机升级版本,无法连续对外提供服务的技术方案相比,通过:根据预先配置的外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,将当前外部系统请求报文格式转换为内部微服务请求报文格式,得到内部微服务请求格式报文;根据当前外部系统请求的Url,以及预先配置的外部系统请求Url与内部微服务之间的对应关系,确定当前外部系统请求对应的内部微服务;根据内部微服务请求格式报文,以及当前外部系统请求对应的内部微服务信息,引用当前外部系统请求对应的内部微服务,获得内部微服务响应报文;根据预先配置的内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系,将内部微服务响应报文的格式转换为外部系统响应报文格式,得到外部系统响应格式报文,可以实现基于配置的外部系统与内部微服务之间的对应关系提供微服务架构中的网关服务,在新增或者修改接口的时候,无需开发新的代码jar包,无需停机升级版本,只需要新增或修改相应的对应关系,即可完成接口的新增或者修改,降低工作人员的开发和测试的工作量,同时保证网关系统对外服务的稳定连续运营。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (15)
1.一种微服务架构中基于数据库配置的网关处理方法,其特征在于,包括:
根据预先配置的外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,将当前外部系统请求报文格式转换为内部微服务请求报文格式,得到内部微服务请求格式报文;
根据当前外部系统请求的Url,以及预先配置的外部系统请求Url与内部微服务之间的对应关系,确定当前外部系统请求对应的内部微服务;
根据内部微服务请求格式报文,以及当前外部系统请求对应的内部微服务信息,引用当前外部系统请求对应的内部微服务,获得内部微服务响应报文;
根据预先配置的内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系,将内部微服务响应报文的格式转换为外部系统响应报文格式,得到外部系统响应格式报文。
2.如权利要求1所述的微服务架构中基于数据库配置的网关处理方法,其特征在于,根据预先配置的外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,将当前外部系统请求报文格式转换为内部微服务请求报文格式,得到内部微服务请求格式报文,包括:
将当前外部系统请求报文格式转换为HashMap格式;
根据预先配置的外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,将HashMap格式的外部系统请求报文转换为内部微服务请求格式报文。
3.如权利要求1所述的微服务架构中基于数据库配置的网关处理方法,其特征在于,根据预先配置的内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系,将内部微服务响应报文的格式转换为外部系统响应报文格式,得到外部系统响应格式报文,包括:
根据预先配置的内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系,将内部微服务响应报文的格式转换为HashMap格式,得到HashMap格式的内部微服务响应报文;
将HashMap格式的内部微服务响应报文转换为外部系统响应格式报文。
4.如权利要求1所述的微服务架构中基于数据库配置的网关处理方法,其特征在于,还包括:
接收对外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,外部系统请求的Url与内部微服务之间的对应关系,和/或内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系的更新请求;
根据所述更新请求,更新外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,外部系统请求的Url与内部微服务之间的对应关系,和/或内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系。
5.如权利要求1所述的微服务架构中基于数据库配置的网关处理方法,其特征在于,还包括:
接收对外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,外部系统请求的Url与内部微服务之间的对应关系,和/或内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系的查询请求;
根据所述查询请求,反馈对外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,外部系统请求的Url与内部微服务之间的对应关系,和/或内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系的查询结果。
6.如权利要求1所述的微服务架构中基于数据库配置的网关处理方法,其特征在于,还包括:
接收当前外部系统请求;
将外部系统响应格式报文反馈给外部系统。
7.如权利要求1所述的微服务架构中基于数据库配置的网关处理方法,其特征在于,所述内部微服务为内部Dubbo微服务。
8.一种微服务架构中基于数据库配置的网关处理系统,其特征在于,包括:
第一转换单元,用于根据预先配置的外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,将当前外部系统请求报文格式转换为内部微服务请求报文格式,得到内部微服务请求格式报文;
确定单元,用于根据当前外部系统请求的Url,以及预先配置的外部系统请求Url与内部微服务之间的对应关系,确定当前外部系统请求对应的内部微服务;
处理单元,用于根据内部微服务请求格式报文,以及当前外部系统请求对应的内部微服务信息,引用当前外部系统请求对应的内部微服务,获得内部微服务响应报文;
第二转换单元,用于根据预先配置的内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系,将内部微服务响应报文的格式转换为外部系统响应报文格式,得到外部系统响应格式报文。
9.如权利要求8所述的微服务架构中基于数据库配置的网关处理系统,其特征在于,所述第一转换单元具体用于:
将当前外部系统请求报文格式转换为HashMap格式;
根据预先配置的外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,将HashMap格式的外部系统请求报文转换为内部微服务请求格式报文。
10.如权利要求8所述的微服务架构中基于数据库配置的网关处理系统,其特征在于,所述第二转换单元具体用于:
根据预先配置的内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系,将内部微服务响应报文的格式转换为HashMap格式,得到HashMap格式的内部微服务响应报文;
将HashMap格式的内部微服务响应报文转换为外部系统响应格式报文。
11.如权利要求8所述的微服务架构中基于数据库配置的网关处理系统,其特征在于,还包括:
更新请求接收单元,用于接收对外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,外部系统请求的Url与内部微服务之间的对应关系,和/或内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系的更新请求;
更新单元,用于根据所述更新请求,更新外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,外部系统请求的Url与内部微服务之间的对应关系,和/或内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系。
12.如权利要求8所述的微服务架构中基于数据库配置的网关处理系统,其特征在于,还包括:
查询请求接收单元,用于接收对外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,外部系统请求的Url与内部微服务之间的对应关系,和/或内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系的查询请求;
反馈单元,用于根据所述查询请求,反馈对外部系统请求报文栏位与内部微服务请求报文栏位之间的对应关系,外部系统请求的Url与内部微服务之间的对应关系,和/或内部微服务响应报文栏位与外部系统响应报文栏位之间的对应关系的查询结果。
13.如权利要求8所述的微服务架构中基于数据库配置的网关处理系统,其特征在于,还包括:
外部请求接收单元,用于接收当前外部系统请求;
提供单元,用于将外部系统响应格式报文反馈给外部系统。
14.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7任一所述方法。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求1至7任一所述方法的计算机程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110737547.XA CN113472880B (zh) | 2021-06-30 | 2021-06-30 | 微服务架构中基于数据库配置的网关处理方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110737547.XA CN113472880B (zh) | 2021-06-30 | 2021-06-30 | 微服务架构中基于数据库配置的网关处理方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113472880A true CN113472880A (zh) | 2021-10-01 |
CN113472880B CN113472880B (zh) | 2023-06-27 |
Family
ID=77876547
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110737547.XA Active CN113472880B (zh) | 2021-06-30 | 2021-06-30 | 微服务架构中基于数据库配置的网关处理方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113472880B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111985186A (zh) * | 2020-08-26 | 2020-11-24 | 平安国际智慧城市科技股份有限公司 | 一种字典项转换方法、api网关系统、设备及存储介质 |
CN112929358A (zh) * | 2021-01-29 | 2021-06-08 | 中国工商银行股份有限公司 | 用于微服务编排的方法和装置、电子设备、及介质 |
CN113037831A (zh) * | 2021-03-04 | 2021-06-25 | 中国农业银行股份有限公司 | 一种服务网关报文处理方法及装置 |
-
2021
- 2021-06-30 CN CN202110737547.XA patent/CN113472880B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111985186A (zh) * | 2020-08-26 | 2020-11-24 | 平安国际智慧城市科技股份有限公司 | 一种字典项转换方法、api网关系统、设备及存储介质 |
CN112929358A (zh) * | 2021-01-29 | 2021-06-08 | 中国工商银行股份有限公司 | 用于微服务编排的方法和装置、电子设备、及介质 |
CN113037831A (zh) * | 2021-03-04 | 2021-06-25 | 中国农业银行股份有限公司 | 一种服务网关报文处理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113472880B (zh) | 2023-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109840429B (zh) | 智能合约部署、调用方法和装置 | |
CN102880503A (zh) | 数据分析系统及数据分析方法 | |
CN111277639B (zh) | 一种保持数据一致性的方法和装置 | |
CN102780724A (zh) | 一种类目信息的发送方法、系统及设备 | |
US10936360B2 (en) | Methods and devices of batch process of content management | |
CN110688828A (zh) | 文件处理方法及装置、文件处理系统、计算机设备 | |
CN110688096B (zh) | 包含插件的应用程序的构建方法、装置、介质及电子设备 | |
CN111125496A (zh) | 一种价格查询方法、装置及系统 | |
CN112130830B (zh) | 接口生成方法、装置及电子设备 | |
CN109104368B (zh) | 一种请求连接方法、装置、服务器及计算机可读存储介质 | |
CN112769706A (zh) | 组件化路由方法及系统 | |
CN112199186B (zh) | 基于智能合约的数据处理方法、装置、设备及存储介质 | |
CN112132530B (zh) | 可视化动态流程编排方法及系统 | |
CN110764769B (zh) | 处理用户请求的方法和装置 | |
CN110620819B (zh) | 区块链交互方法、装置、计算机设备及可读存储介质 | |
CN113472880A (zh) | 微服务架构中基于数据库配置的网关处理方法及系统 | |
CN111339047A (zh) | 一种数据交互方法、装置及系统 | |
CN116069725A (zh) | 文件迁移方法、装置、设备、介质和程序产品 | |
CN112416980B (zh) | 数据业务处理方法、装置及设备 | |
CN113094429B (zh) | 数据处理方法、数据查询方法、计算机设备和存储介质 | |
CN110806967A (zh) | 一种单元测试方法和装置 | |
CN111124482B (zh) | 文案信息的配置方法和装置 | |
CN114816363A (zh) | 一种基于MyBatis的数据服务API实现方法及装置 | |
CN112637288A (zh) | 流式数据分发方法和系统 | |
CN116340363B (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 |