掌桥专利:专业的专利平台
掌桥专利
首页

一种API网关的管理方法及装置

文献发布时间:2024-04-18 20:01:55


一种API网关的管理方法及装置

技术领域

本发明涉及API网关的管理领域,尤其是一种API网关的管理方法及装置。

背景技术

现有的业务系统部署过程中,由于实际环境中缺乏良好的联合管理解决方案,一般都会部署多个API网关。每个团队根据自己的业务部署API网关,由每个团队独立运维,其路由、认证和安全等功能,由每个团队独立管理配置。

由于API网关的独立部署,使得每个API流量可能经过多个API网关,每个API网关需要进行认证、安全和管控等处理。每个业务团队对认证和安全的要求可能不同,专业认知也不同,独立部署也使得业务团队不能聚焦业务本身。多个API网关的部署导致了系统复杂性的增加,也增加了安全风险,同时导致了性能的下降。

发明内容

为解决现有技术存在的上述问题,本发明提供一种API网关的管理方法及装置。

为实现上述目的,本发明采用下述技术方案:

在本发明一实施例中,提出了一种API网关的管理方法,该方法包括:

向管理系统进行API网关的注册;

管理系统将所有注册的API网关融合为超级API网关;

超级API网关通过北向接口对外提供超级API网关的能力;

超级API网关对收到的业务请求进行原子能力分解和流量路径编排,下发到不同的API网关;

管理系统监控API网关的运行状态,收集API网关的运行日志,对API网关进行统一的监控和运维。

进一步地,超级API网关的控制层面包括流量编排模块、业务分解模块、能力管理模块、能力调用模块、拓扑管理模块和资源管理模块;

拓扑管理模块根据API网关的类型,确定其在所有API网关中的位置,构建API网关的拓扑图;

资源管理模块根据API网关所注册的软件类型以及版本信息,确定API网关所具有的原子能力,并向能力管理模块注册相应的原子能力。

进一步地,超级API网关根据业务请求的功能特征,将业务请求分解为不同的原子能力,根据所有API网关的资源状态以及其所具有的原子能力,确定API网关。

进一步地,超级API网关根据所选择的API网关,进行流量路径的编排,根据业务请求所经过的API网关,确定上下游的关系,从而确定每个API网关的转发策略。

进一步地,当API请求到达超级API网关时,根据超级API网关编排的流量路径以及转发策略进行API请求以及API响应的处理。

在本发明一实施例中,还提出了一种API网关的管理装置,该装置包括:

管理系统,用于注册API网关,将所有注册的API网关融合为超级API网关;同时监控API网关的运行状态,收集API网关的运行日志,对API网关进行统一的监控和运维;

超级API网关,用于通过北向接口对外提供超级API网关的能力;对收到的业务请求进行原子能力分解和流量路径编排,下发到不同的API网关。

进一步地,超级API网关的控制层面包括流量编排模块、业务分解模块、能力管理模块、能力调用模块、拓扑管理模块和资源管理模块;

拓扑管理模块根据API网关的类型,确定其在所有API网关中的位置,构建API网关的拓扑图;

资源管理模块根据API网关所注册的软件类型以及版本信息,确定API网关所具有的原子能力,并向能力管理模块注册相应的原子能力。

进一步地,超级API网关根据业务请求的功能特征,将业务请求分解为不同的原子能力,根据所有API网关的资源状态以及其所具有的原子能力,确定API网关。

进一步地,超级API网关根据所选择的API网关,进行流量路径的编排,根据业务请求所经过的API网关,确定上下游的关系,从而确定每个API网关的转发策略。

进一步地,当API请求到达超级API网关时,根据超级API网关编排的流量路径以及转发策略进行API请求以及API响应的处理。

在本发明一实施例中,还提出了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现前述API网关的管理方法。

在本发明一实施例中,还提出了一种计算机可读存储介质,计算机可读存储介质存储有执行API网关的管理方法的计算机程序。

有益效果:

1、本发明融合API网关的功能,避免功能以及策略的重复,提高系统性能,减低维护的复杂性,降低运维成本。

2、本发明对外提供统一入口,降低安全风险。

3、本发明统一管理所有的API网关,避免策略的复杂性,提高问题定位的效率。

4、本发明北向统一入口,基础功能统一管理,减少业务团队的维护成本。

附图说明

图1是本发明的API网关的管理方法流程示意图;

图2是本发明一实施例的超级API网关的结构框图;

图3是本发明一实施例的API网关的拓扑图;

图4是本发明一实施例的业务请求流量的转发路径示意图;

图5是本发明的API网关的管理装置结构示意图;

图6是本发明的计算机设备结构示意图。

具体实施方式

下面将参考若干示例性实施方式来描述本发明的原理和精神,应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。

本领域技术人员知道,本发明的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。

根据本发明的实施方式,提出了一种API网关的管理方法及装置,向管理系统进行API网关的注册;管理系统将所有注册的API网关融合为超级API网关,通过北向接口对外提供超级API网关的能力;超级API网关对收到的业务请求进行原子能力分解和流量路径编排,下发到不同的API网关;管理系统监控API网关的运行状态,收集API网关的运行日志,对API网关进行统一的监控和运维;超级API网关对外统一提供API认证能力、安全能力以及策略管理能力等,从而降低API网关的策略管理的复杂性,提高API网关的转发性能和系统的利用率,减少流量的入口,提高系统的安全性。

下面参考本发明的若干代表性实施方式,详细阐释本发明的原理和精神。

图1是本发明的API网关的管理方法流程示意图。如图1所示,该方法包括:

S1、向管理系统进行API网关的注册;

API网关的类型分为流量型网关、业务型网关和功能型网关。

S2、管理系统将所有注册的API网关融合为超级API网关;

融合:将多个不同能力的API网关进行组合,对外呈现为一个网关,从用户视角来看,就是一个网关,该超级API网关是所有API网关的原子能力的组合。

超级API网关的控制层面包括流量编排模块、业务分解模块、能力管理模块、能力调用模块、拓扑管理模块和资源管理模块;

拓扑管理模块根据API网关的类型,确定其在所有API网关中的位置,构建API网关的拓扑图;

资源管理模块根据API网关所注册的软件类型以及版本信息,确定API网关所具有的原子能力,并向能力管理模块注册相应的原子能力。

S3、超级API网关通过北向接口对外提供超级API网关的能力。

S4、超级API网关对收到的业务请求进行原子能力分解和流量路径编排,下发到不同的API网关;

超级API网关根据业务请求的功能特征,将业务请求分解为不同的原子能力,根据所有API网关的资源状态以及其所具有的原子能力,确定API网关;

业务请求是指流量经过API网关的路由策略、安全策略等配置信息。

超级API网关根据所选择的API网关,进行流量路径的编排,根据业务请求所经过的API网关,确定上下游的关系,从而确定每个API网关的转发策略。

当API请求到达超级API网关时,根据超级API网关编排的流量路径以及转发策略进行API请求以及API响应的处理。

API请求是指流量经过API网关时,按照上述的业务请求所进行的配置,对流量进行处理。

S5、管理系统监控API网关的运行状态,收集API网关的运行日志,对API网关进行统一的监控和运维。

需要说明的是,尽管在上述实施例及附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。

为了对上述API网关的管理方法进行更为清楚的解释,下面结合一个具体的实施例来进行说明,然而值得注意的是该实施例仅是为了更好地说明本发明,并不构成对本发明不当的限定。

S1、向管理系统进行API网关的注册;

注册内容包括API网关类型、名称、软件类型、版本、所属系统、单例/集群、网络信息和通信方式等。

API网关的类型分为流量型网关、业务型网关和功能型网关;流量型网关即该类型的API网关只进行流量的转发,不关心具体的业务,比如对流量进行负载均衡,又比如仅仅根据HOST信息进行流量转发;功能型网关即该类型的API网关只有某种功能特征,不关心具体的业务,比如SSL的卸载网关、安全认证网关、API安全网关和数据安全网关等;业务型网关即需要了解业务,根据业务做不同的处理,比如算力网关、网络能力网关等,一般业务型网关由业务团队维护,而流量型网关以及功能型网关一般由非业务团队管理,由某个管理系统统一管理。

API网关注册时,需要指明其是单例或者集群,集群的名称唯一,在同一个集群中的API网关会被当做一个整体进行处理,集群的API网关共享数据库,集群中的API网关的所有的配置策略都一样。

网络信息:主要指转发面的通信方式,包括API网关的业务通信地址以及端口,转发面是为了与控制面进行区分,控制面的端口是指与控制系统进行控制报文交互的端口。

通信方式:指API网关用来和管理系统通信的IP地址、端口以及通信的协议等。

具体实施时,流量型网关和功能型网关由运维人员统一管理,业务型网关由业务团队进行管理。

S2、管理系统将所有注册的API网关融合为超级API网关;

管理系统将所有注册的API网关融合为超级API网关,并对外提供统一的超级API网关自服务门户。自服务门户为用户的操作门户,与管理员的管理门户进行区分。

超级API网关的结构,如图2所示:

超级API网关由两层构成,上层为控制层面,由流量编排、业务分解、能力管理、能力调用、拓扑管理、资源管理等模块构成,下层为能力层面,由每个API网关构成。同时为用户提供北向接口,并通过南向接口调用API网关。

资源管理模块根据API网关所注册的软件类型以及版本信息,确定API网关所具有的原子能力,并向能力管理模块注册相应的原子能力。

管理系统根据API网关的功能,确定API网关在超级API网关中的位置,配置相关的网络策略,保证管理系统与API网关之间可达,且API网关之间网络可达。

具体实施时,同一类型的API网关之间不需要网络可达。

拓扑管理模块根据API网关的类型,确定其在所有API网关中的位置,构建API网关的拓扑图,并监控API网关之间的网络路径是否健康。

优选的,整个业务流量的转发流程中,业务流量最先经过的是流量型网关,即流量型网关一般部署于边界,而功能型网关部署于中间,比如SSL卸载,安全网关、认证网关,业务网关在最后一级。

如图3所示,T-APIG(traffic-APIG)为流量型网关,F-APIG(function-APIG)为功能型网关,S-APIG(service-APIG)为业务型网关,APIG为API GATEWAY的缩写。具体实施时,T-APIG为边界入口,流量从T-APIG进入超级API网关。T-APIG根据策略将流量分发至其他的API网关。具体实施时,T-APIG可以直接将流量转发至S-APIG,这种转发顺序由流量转发路径确定,可以按照需求进行编排;原则上,业务型网关部署在最后一级,并且不能相互转发。

具体实施时,API网关在整体网关中的位置不等于流量转发路径,比如业务流量可以从流量型网关直接到达业务网关,流量转发路径由流量编排模块根据业务确定。

S3、超级API网关通过北向接口对外提供超级API网关的能力;

超级API网关将API网关的能力进行融合并抽象,对北向提供统一的接口;超级API网关对北向的接口进行拆分为不同的能力,下发到不同的API网关。

超级API网关整合API网关的能力,对外提供统一的北向接口;北向接口包括API的路由策略、分流策略、安全认证、安全防护、代理功能和灰度发布等。超级API网关对外呈现API网关的能力,用户不再感知底层API网关的能力。具体的,从用户角度来说,超级API网关就是一个大的网关,具备所有的能力,用户通过自服务门户即用户的使用页面进行业务配置和管理,但是不感知业务由哪个底层API网关来执行。

每个能力由单独的API网关去完成,不同的API网关共同组合,对外呈现组合能力。

超级API网关对外提供超融合的能力,包括构成超级API网关的所有API网关的能力。

管理员通过管理系统查看和管理API网关的信息,包括每个API网关的状态以及配置信息。

管理系统为业务人员提供超级API网关的自服务门户即用户的使用页面,业务人员通过超级API网关查看API网关的配置信息。管理系统在数据层面进行安全隔离,每个业务人员只能看到权限范围内的配置信息。

具体实施时,对于WEB业务,需要对外发布域名或者CNAME,不同的业务系统有不同的域名,每个业务系统都需要独立发布,即每个业务系统对外的API网关都需要具有对外进行域名发布的功能,这样导致了业务的边界不清晰,入口较多,增加了安全风险。超级API网关将公共的能力抽象出来,由流量型网关来完成域名的发布和引流的过程。

S4、超级API网关对收到的业务请求进行原子能力分解和流量路径编排,下发到不同的API网关;

超级API网关接收到北向接口的业务请求之后,对业务请求进行分解和编排,并下发到API网关。

由流量型网关对业务请求的流量进行分发,功能型网关对非业务的功能进行处理,而业务型网关对业务进行处理,业务团队只需要关注业务即可。

超级API网关根据业务请求的功能特征,将其分解为不同的原子能力,根据现有的API网关的资源状态以及其所具有的原子能力,确定API网关。

超级API网关根据所选择的API网关进行流量转发路径的编排,根据业务请求所经过的API网关,确定上下游的关系,从而确定每个API网关的转发策略。

具体实施时,一个业务的流量转发路径确定之后,超级API网关对后续的业务策略,只需要按照之前确定的流量转发路径所关联的API网关进行配置即可。

具体的,以代理功能为例,研发团队需要将A服务注册到API网关,希望通过API网关进行业务代理。A服务对外提供HTTPS协议,需要安全认证,认证方式为OIDC,后端有三台提供服务的上游机器。超级API网关接收到北向接口的业务请求之后,根据用户的业务请求将其能力分解为HTTPS应用+OIDC认证+路由策略三个子能力。超级API网关首先选择具有该子能力的API网关,根据超级API网关的拓扑图,选择具有相应子能力的API网关,然后根据API网关在拓扑中的位置进行流量路径编排,构建业务请求的流量转发路径;具体的,以本实施例为例,业务请求首先经过流量型网关,而后经过具有SSL卸载/加载能力的功能型网关,再经过OIDC认证网关,最后经过A服务的业务网关,如图4所示。超级API网关将分解后的子能力下发到不同的API网关,比如证书下发到具有SSL卸载/加载能力的功能型网关独立负责SSL的卸载/加载。

具体实施时,超级API网关可以将流量引入到第三方系统,将第三方系统作为转发路径中的处理能力。

优选的,超级API网关根据API网关的运行状态,选择不同的API网关进行策略下发。

S5、管理系统监控API网关的运行状态,收集API网关的运行日志,对API网关进行统一的监控和运维;

管理系统监控API网关的运行状态,包括每个API网关的健康状态、连接数和资源状态等,收集API网关的运行日志,对运行日志进行分析,并统一的对外呈现。

运维人员通过管理系统查看业务请求流量完整的转发路径以及策略信息执行的结果;业务人员通过超级API网关可以看到其所配置的策略的执行情况,以及所注册的服务相关的API资产信息,以及API网关的调用记录和执行情况。

基于同一发明构思,本发明还提出一种API网关的管理装置。该装置的实施可以参见上述方法的实施,重复之处不再赘述。以下所使用的术语“模块”,可以是实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。

图5是本发明一实施例的API网关的管理装置结构示意图。如图5所示,该装置包括:

管理系统101,用于注册API网关,将所有注册的API网关融合为超级API网关102;同时监控API网关的运行状态,收集API网关的运行日志,对API网关进行统一的监控和运维;

超级API网关102的控制层面包括流量编排模块、业务分解模块、能力管理模块、能力调用模块、拓扑管理模块和资源管理模块;

拓扑管理模块根据API网关的类型,确定其在所有API网关中的位置,构建API网关的拓扑图;

资源管理模块根据API网关所注册的软件类型以及版本信息,确定API网关所具有的原子能力,并向能力管理模块注册相应的原子能力。

超级API网关102,用于通过北向接口对外提供超级API网关102的能力;对收到的业务请求进行原子能力分解和流量路径编排,下发到不同的API网关;

超级API网关102根据业务请求的功能特征,将业务请求分解为不同的原子能力,根据所有API网关的资源状态以及其所具有的原子能力,确定API网关。

超级API网关102根据所选择的API网关,进行流量路径的编排,根据业务请求所经过的API网关,确定上下游的关系,从而确定每个API网关的转发策略。

当API请求到达超级API网关102时,根据超级API网关102编排的流量路径以及转发策略进行API请求以及API响应的处理。

应当注意,尽管在上文详细描述中提及了API网关的管理装置的若干模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多模块的特征和功能可以在一个模块中具体化。反之,上文描述的一个模块的特征和功能可以进一步划分为由多个模块来具体化。

基于前述发明构思,如图6所示,本发明还提出一种计算机设备200,包括存储器210、处理器220及存储在存储器210上并可在处理器220上运行的计算机程序230,处理器220执行计算机程序230时实现前述API网关的管理方法。

基于前述发明构思,本发明还提出一种计算机可读存储介质,计算机可读存储介质存储有执行前述API网关的管理方法的计算机程序。

本发明提出的API网关的管理方法及装置,根据业务适配不同的路由匹配算法,提高了能力网关的转发性能;不同的路由匹配算法既可以横向组合也可以纵向组合,提高了能力网关转发的灵活性。

虽然已经参考若干具体实施方式描述了本发明的精神和原理,但是应该理解,本发明并不限于所公开的具体实施方式,对各方面的划分也不意味着这些方面中的特征不能组合以进行受益,这种划分仅是为了表述的方便。本发明旨在涵盖所附权利要求的精神和范围内所包含的各种修改和等同布置。

对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。

相关技术
  • 一种纤维管卧式离心成型装置及其成型工艺
  • 一种橡胶制品模内发泡成型装置及其成型工艺
  • 一种碳纳米管增强铜基合金的配方及一种粉末注射成型工艺
  • 一种基于FDM成型设备组装微纳米级熔融静电纺丝装置
  • 一种纳米银离子抑菌的TPU菜板成型工艺及装置
  • 一种TPU菜板注塑成型工艺及装置
技术分类

06120116571698