CN111787103A - 一种基于Kong网关的路径变更匹配方法 - Google Patents

一种基于Kong网关的路径变更匹配方法 Download PDF

Info

Publication number
CN111787103A
CN111787103A CN202010620894.XA CN202010620894A CN111787103A CN 111787103 A CN111787103 A CN 111787103A CN 202010620894 A CN202010620894 A CN 202010620894A CN 111787103 A CN111787103 A CN 111787103A
Authority
CN
China
Prior art keywords
path
plug
request
match
kong
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.)
Pending
Application number
CN202010620894.XA
Other languages
English (en)
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.)
Inspur Cloud Information Technology Co Ltd
Original Assignee
Inspur Cloud Information Technology Co Ltd
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 Inspur Cloud Information Technology Co Ltd filed Critical Inspur Cloud Information Technology Co Ltd
Priority to CN202010620894.XA priority Critical patent/CN111787103A/zh
Publication of CN111787103A publication Critical patent/CN111787103A/zh
Pending legal-status Critical Current

Links

Images

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/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • G06F9/44526Plug-ins; Add-ons
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明特别涉及一种基于Kong网关的路径变更匹配方法。该基于Kong网关的路径变更匹配方法,消费者的请求不直接指向上游服务,而是指向Kong网关,由网关转发至上游服务,通过在Kong网关上启用Match_Url插件,插件在用户请求的路径上进行组合变更,然后转发至上游服务。该基于Kong网关的路径变更匹配方法,基于插件机制实现了不同系统不同版本的接口转换,能够对Kong上游服务地址进行变更匹配,以实现接口升级时对路径变化的兼容,能够避免原有代码的变更,进一步减少了应用接口升级对现有业务的影响,同时还能够动态指定路径变更内容,有利于实现系统的无感升级。

Description

一种基于Kong网关的路径变更匹配方法
技术领域
本发明涉及API网关技术领域,特别涉及一种基于Kong网关的路径变更匹配方法。
背景技术
Kong是基于NGINX和Apache Cassandra或PostgreSQL构建的,能提供易于使用的RESTful API来操作和配置API管理系统,所以它可以水平扩展多个Kong服务器,通过前置的负载均衡配置把请求均匀地分发到各个Server,来应对大批量的网络请求。
Kong网关具有以下的特性:
可扩展性:通过简单地添加更多的服务器,可以轻松地进行横向扩展,这意味着您的平台可以在一个较低负载的情况下处理任何请求;
模块化:可以通过添加新的插件进行扩展,这些插件可以通过RESTful Admin API轻松配置;
在任何基础架构上运行:Kong网关可以在任何地方都能运行。您可以在云或内部网络环境中部署Kong,包括单个或多个数据中心设置,以及public,private或invite-onlyAPIs。
Kong网关作为一款基于OpenResty的高可用、易扩展的API(ApplicationProgramming Interface,应用程序编程接口)网关,能够提供当前使用广泛的Restful API来操作和配置管理网关。
在当前流行的微服务框架下,服务被拆的十分零散,虽然降低了耦合度但是也一定程度上提高了统一管理的难度,Kong网关作为API网关,能够提供全局的统一试图来管理鉴权、限流、日志、监控等功能。而Kong网关的插件机制,又让其高可用性得到进一步凸显。
在当前公共服务的复杂度空前提高、服务范围不断延申的趋势下,越来越多的公共服务通过接口对接的方式连接多个系统共同提供服务。而当系统分属不同厂商时,在系统服务升级时,经常会出现接口兼容问题,请求路径及请求消息的改变导致原有接口不可用。而要协调相关方同步进行变更,不仅费时费力,还面临相关方的配合态度问题。
基于上述问题,本发明提出了一种基于Kong网关的路径变更匹配方法,旨在利用Kong网关的插件机制,开发自定义匹配插件,实现请求路径的变更匹配。
发明内容
本发明为了弥补现有技术的缺陷,提供了一种简单高效的基于Kong网关的路径变更匹配方法。
本发明是通过如下技术方案实现的:
一种基于Kong网关的路径变更匹配方法,其特征在于:消费者的请求不直接指向上游服务,而是指向Kong网关,由网关转发至上游服务,通过在Kong网关上启用Match_Url插件,插件在用户请求的路径上进行组合变更,然后转发至上游服务。
本发明基于Kong网关的路径变更匹配方法,包括以下步骤:
第一步,消费者发起请求,请求指向Kong网关;
第二步,Match_Url插件在请求被代理之前执行;
第三步,Match_Url插件截取请求和上游服务路径进行拼接;
第四步,Match_Url插件对拼接后的路径进行处理
第五步,Match_Url插件将请求转发至新地址。
所述第一步中,自定义开发Match_Url插件,并在Kong网关中启用路径变更匹配Match_Url插件,然后启动Kong网关,定义Kong网关Service,并配置关联Kong网关Route。
所述Kong网关自定义插件标准基础模块包含handler.lua和schema.lua文件。
其中,Kong是一款基于OpenResty编写的高可用、易扩展的API网关;
OpenRestry是一个基于Nginx与Lua的高性能Web平台;
Nginx是一个高性能的HTTP和反向代理web服务器;
Lua一种脚本语言;
Service是Kong网关的服务实体,服务实体是每个上游服务的抽象;
Route:Kong网关的一套匹配客户端请求的规则;
消费者:请求发起方;
上游服务:服务响应方。
所述第三步中,Match_Url插件截取上游服务地址以及请求的服务路径,不包含IP和端口的请求路径,进行拼接。
所述第三步中,Match_Url插件获取请求的header(标头)参数,所述header参数包括制定请求路径处理方式的字符串和指定的字符串两个参数。
所述制定请求路径处理方式的字符串是截取屏蔽路径中与header参数指定字符串相同的部分或给路径添加header参数指定的字符串。
所述第四步中,Match_Url插件根据header参数指定操作类型,屏蔽拼接路径中的指定字符串或在拼接路径中将指定字符串添加进服务路径,形成新路径。
本发明的有益效果是:该基于Kong网关的路径变更匹配方法,基于插件机制实现了不同系统不同版本的接口转换,能够对Kong上游服务地址进行变更匹配,以实现接口升级时对路径变化的兼容,能够避免原有代码的变更,进一步减少了应用接口升级对现有业务的影响,同时还能够动态指定路径变更内容,有利于实现系统的无感升级。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
附图1为本发明基于Kong网关的路径变更匹配方法示意图。
具体实施方式
为了使本技术领域的人员更好的理解本发明中的技术方案,下面将结合本发明实施例,对本发明实施例中的技术方案进行清楚,完整的描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
该基于Kong网关的路径变更匹配方法,消费者的请求不直接指向上游服务,而是指向Kong网关,由网关转发至上游服务,通过在Kong网关上启用Match_Url插件,插件在用户请求的路径上进行组合变更,然后转发至上游服务。
该基于Kong网关的路径变更匹配方法,包括以下步骤:
第一步,消费者发起请求,请求指向Kong网关;
第二步,Match_Url插件在请求被代理之前执行;
第三步,Match_Url插件截取请求和上游服务路径进行拼接;
第四步,Match_Url插件对拼接后的路径进行处理
第五步,Match_Url插件将请求转发至新地址。
所述第一步中,自定义开发Match_Url插件,并在Kong网关中启用路径变更匹配Match_Url插件,然后启动Kong网关,定义Kong网关Service,并配置关联Kong网关Route。
所述Kong网关自定义插件标准基础模块包含handler.lua和schema.lua文件。
其中,Kong是一款基于OpenResty编写的高可用、易扩展的API网关;
OpenRestry是一个基于Nginx与Lua的高性能Web平台;
Nginx是一个高性能的HTTP和反向代理web服务器;
Lua一种脚本语言;
Service是Kong网关的服务实体,服务实体是每个上游服务的抽象;
Route:Kong网关的一套匹配客户端请求的规则;
消费者:请求发起方;
上游服务:服务响应方。
所述第三步中,Match_Url插件截取上游服务地址以及请求的服务路径,不包含IP和端口的请求路径,进行拼接。
所述第三步中,Match_Url插件获取请求的header(标头)参数,所述header参数包括制定请求路径处理方式的字符串和指定的字符串两个参数。
所述制定请求路径处理方式的字符串是截取屏蔽路径中与header参数指定字符串相同的部分或给路径添加header参数指定的字符串。
所述第四步中,Match_Url插件根据header参数指定操作类型,屏蔽拼接路径中的指定字符串或在拼接路径中将指定字符串添加进服务路径,形成新路径。
与目前的现有技术相比,该基于Kong网关的路径变更匹配方法,具有以下特点:
第一、通过对Kong上游服务地址进行变更匹配,实现了接口升级时对路径变化的兼容;
第二、通过Kong网关的插件实现了不同系统不同版本的接口转换,能够避免原有代码的变更,进一步减少应用接口升级对现有业务的影响;
第三、能够动态指定路径变更内容,有利于实现系统的无感升级。
以上所述的实施例,只是本发明具体实施方式的一种,本领域的技术人员在本发明技术方案范围内进行的通常变化和替换都应包含在本发明的保护范围内。

Claims (8)

1.一种基于Kong网关的路径变更匹配方法,其特征在于:消费者的请求不直接指向上游服务,而是指向Kong网关,由网关转发至上游服务,通过在Kong网关上启用Match_Url插件,插件在用户请求的路径上进行组合变更,然后转发至上游服务。
2.根据权利要求1所述的基于Kong网关的路径变更匹配方法,其特征在于,包括以下步骤:
第一步,消费者发起请求,请求指向Kong网关;
第二步,Match_Url插件在请求被代理之前执行;
第三步,Match_Url插件截取请求和上游服务路径进行拼接;
第四步,Match_Url插件对拼接后的路径进行处理
第五步,Match_Url插件将请求转发至新地址。
3.根据权利要求2所述的基于Kong网关的路径变更匹配方法,其特征在于:所述第一步中,自定义开发Match_Url插件,并在Kong网关中启用路径变更匹配Match_Url插件,然后启动Kong网关,定义Kong网关Service,并配置关联Kong网关Route。
4.根据权利要求3所述的基于Kong网关的路径变更匹配方法,其特征在于:所述Kong网关自定义插件标准基础模块包含handler.lua和schema.lua文件。
5.根据权利要求2所述的基于Kong网关的路径变更匹配方法,其特征在于:所述第三步中,Match_Url插件截取上游服务地址以及请求的服务路径,不包含IP和端口的请求路径,进行拼接。
6.根据权利要求5所述的基于Kong网关的路径变更匹配方法,其特征在于:所述第三步中,Match_Url插件获取请求的header参数,所述header参数包括制定请求路径处理方式的字符串和指定的字符串两个参数。
7.根据权利要求6所述的基于Kong网关的路径变更匹配方法,其特征在于:所述制定请求路径处理方式的字符串是截取屏蔽路径中与header参数指定字符串相同的部分或给路径添加header参数指定的字符串。
8.根据权利要求7所述的基于Kong网关的路径变更匹配方法,其特征在于:所述第四步中,Match_Url插件根据header参数指定操作类型,屏蔽拼接路径中的指定字符串或在拼接路径中将指定字符串添加进服务路径,形成新路径。
CN202010620894.XA 2020-07-01 2020-07-01 一种基于Kong网关的路径变更匹配方法 Pending CN111787103A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010620894.XA CN111787103A (zh) 2020-07-01 2020-07-01 一种基于Kong网关的路径变更匹配方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010620894.XA CN111787103A (zh) 2020-07-01 2020-07-01 一种基于Kong网关的路径变更匹配方法

Publications (1)

Publication Number Publication Date
CN111787103A true CN111787103A (zh) 2020-10-16

Family

ID=72760989

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010620894.XA Pending CN111787103A (zh) 2020-07-01 2020-07-01 一种基于Kong网关的路径变更匹配方法

Country Status (1)

Country Link
CN (1) CN111787103A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112612508A (zh) * 2020-12-24 2021-04-06 新华三云计算技术有限公司 Api网关中的api版本控制方法、装置及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070280206A1 (en) * 2006-05-31 2007-12-06 Samsung Electronics Co., Ltd. Method for consuming heterogeneous services on heterogeneous devices using script plugins
CN109067914A (zh) * 2018-09-20 2018-12-21 星环信息科技(上海)有限公司 Web服务的代理方法、装置、设备及存储介质
CN109981748A (zh) * 2019-03-05 2019-07-05 广州车行易科技股份有限公司 一种基于Kong网关实现的正向代理方法
CN110381101A (zh) * 2018-04-13 2019-10-25 北京京东尚科信息技术有限公司 Api网关控制系统、控制方法、设备和介质
CN111010417A (zh) * 2019-10-17 2020-04-14 浪潮云信息技术有限公司 基于kong的数据格式转换方法、响应系统及方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070280206A1 (en) * 2006-05-31 2007-12-06 Samsung Electronics Co., Ltd. Method for consuming heterogeneous services on heterogeneous devices using script plugins
CN110381101A (zh) * 2018-04-13 2019-10-25 北京京东尚科信息技术有限公司 Api网关控制系统、控制方法、设备和介质
CN109067914A (zh) * 2018-09-20 2018-12-21 星环信息科技(上海)有限公司 Web服务的代理方法、装置、设备及存储介质
CN109981748A (zh) * 2019-03-05 2019-07-05 广州车行易科技股份有限公司 一种基于Kong网关实现的正向代理方法
CN111010417A (zh) * 2019-10-17 2020-04-14 浪潮云信息技术有限公司 基于kong的数据格式转换方法、响应系统及方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112612508A (zh) * 2020-12-24 2021-04-06 新华三云计算技术有限公司 Api网关中的api版本控制方法、装置及存储介质

Similar Documents

Publication Publication Date Title
US10659354B2 (en) Processing data packets using a policy based network path
CN104298591B (zh) 一种WebApp远程调试方法及系统
CN110708393A (zh) 用于传输数据的方法、装置和系统
CN109547349B (zh) 基于虚拟路由的流量管理方法、装置、终端及存储介质
US10944836B2 (en) Dynamically addressable network services
US20150019751A1 (en) Providing hosted virtual desktop infrastructure services
CN110784360A (zh) 一种实现Kong声明式配置热更新的方法及系统
CN110198334A (zh) 基于对象存储服务的访问方法、装置和存储介质
US10091111B2 (en) Methods and systems for an end-to-end solution to deliver content in a network
CN112988223B (zh) 框架集成方法、装置、电子设备及存储介质
CN108737471B (zh) 一种网络访问方法及装置
WO2016086755A1 (zh) 一种报文处理的方法和透明代理服务器
US20210314371A1 (en) Network-based media processing (nbmp) workflow management through 5g framework for live uplink streaming (flus) control
Li et al. 6G cloud-native system: Vision, challenges, architecture framework and enabling technologies
CN114844941A (zh) 基于Istio的接口级别服务治理方法及相关装置
US11481825B1 (en) Transaction processing at edge servers in a content distribution network
US20220321626A1 (en) Method and apparatus for cascaded multi-input content preparation templates for 5g networks
CN113630464B (zh) 分布式语音处理方法、系统、设备及存储介质
CN110996372A (zh) 消息路由方法、装置、系统及电子设备
CN111787103A (zh) 一种基于Kong网关的路径变更匹配方法
CN113746851B (zh) 一种支持实时解析grpc请求的代理系统和方法
CN114520780A (zh) 用于代理服务器的接入方法及装置
CN116527733A (zh) 用户终端的差异化控制方法及装置、设备及存储
CN115918035A (zh) 用于实现家庭计算云的方法和装置
CN113810448A (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
RJ01 Rejection of invention patent application after publication

Application publication date: 20201016

RJ01 Rejection of invention patent application after publication