CN114666216A - 一种api网关的管理方法和管理系统 - Google Patents
一种api网关的管理方法和管理系统 Download PDFInfo
- Publication number
- CN114666216A CN114666216A CN202210267420.0A CN202210267420A CN114666216A CN 114666216 A CN114666216 A CN 114666216A CN 202210267420 A CN202210267420 A CN 202210267420A CN 114666216 A CN114666216 A CN 114666216A
- Authority
- CN
- China
- Prior art keywords
- api gateway
- configuration
- api
- configuration information
- gateway
- 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
- 238000007726 management method Methods 0.000 title claims abstract description 65
- 238000013499 data model Methods 0.000 claims abstract description 29
- 238000013500 data storage Methods 0.000 claims description 9
- 238000013475 authorization Methods 0.000 claims description 7
- 238000012544 monitoring process Methods 0.000 claims description 7
- 230000000007 visual effect Effects 0.000 claims description 3
- 238000000034 method Methods 0.000 claims description 2
- 239000000306 component Substances 0.000 description 3
- 230000000903 blocking effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- 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
- H04L41/082—Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
-
- 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/0876—Aspects of the degree of configuration automation
- H04L41/0886—Fully automatic configuration
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Automation & Control Theory (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种API网关的管理方法和管理系统,属于计算机技术领域,所述管理方法包括:获取多个API网关类型的统一数据模型,所述统一数据模型包括所述API网关的功能及其配置格式和参数;获取API网关的配置数据;根据所述API网关的类型和统一数据模型,将所述配置数据转换为所述类型的配置信息;将所述配置信息发送到所述API网关;所述API网关根据所接收到的配置信息更新配置。通过建立的统一数据模型,将配置数据转换为API网关类型相应的配置信息;API网关根据所述配置信息更新配置;通过统一不同类型API网关的管理,减少API网关管理的时间成本和人力成本。
Description
技术领域
本发明涉及计算机技术领域,具体涉及一种API网关的管理方法和管理系统。
背景技术
在计算机领域,开发分布式系统是非常有挑战性的,SpringCloud正是一套非常流行的开源微服务与分布式服务治理架构,可以为分布式系统提供很多开箱即用的基础设施,包括服务注册发现、配置中心、负载均衡、熔断等。在SpringCloud的众多组件中,API网关是非常重要的核心组件,它作为整个架构的单一出入口,封装了系统内部复杂的结构,以一致和友好的方式为各个客户端提供接口;此外,API网关一般还会包含众多其他功能,包括授权、监控、负载均衡、限流、熔断等。
目前在SpringCloud的架构中,主要存在两种类型的API网关组件:Zuul网关与SpringCloud网关(SpringCloud Gateway)。Zuul是基于传统同步阻塞技术的网关,而SpringCloud Gateway是基于Reactive技术的异步非阻塞网关。其中,SpringCloudGateway将会作为未来主要的网关组件使用。目前在很多企业内部和私有云上,SpringCloud的两种类型的API网关是并存的。
Zuul与SpringCloud Gateway两种类型的API网关,虽然实现的功能是类似的,但是底层架构和相关配置完全不同。而我们面临的问题是:在企业内部,由于IT系统建设进度是不一致的,所以两种或多种类型的网关在很长一段时间内是并存的。而由于两者之间架构与配置的差异,需要付出额外的管理成本同时管理两种类型的网关。
发明内容
针对现有技术中存在的上述技术问题,本发明提供一种API网关的管理方法和管理系统,建立多种API网关类型的统一数据模型,并根据统一数据模型将配置数据转化为相应的配置信息,所述配置信息同步到API网关中,使生成配置数据时,不需要考虑不同API网关类型,减少API网关管理的时间成本和人力成本。
本发明公开了一种API网关的管理方法,所述管理方法包括:获取多个API网关类型的统一数据模型,所述统一数据模型包括所述API网关的功能及其配置格式和参数;获取API网关的配置数据;根据所述API网关的类型和统一数据模型,将所述配置数据转换为相应类型的配置信息;将所述配置信息发送到相应的API网关;所述API网关根据所接收到的配置信息更新配置。
优选的,所述API网关类型包括Zuul网关和SpringCloud网关;
所述API网关的功能包括负载均衡、限流、注册发现、配置中心、授权、监控或熔断。
优选的,从可视化WEB界面或对外API接口中获取API网关的配置数据;获取配置目标API网关的类型;根据所述类型和统一数据模型,将所述配置数据转化为目标API网关类型相应的配置信息。
本发明还提供一种用于实现上述管理方法的管理系统,包括管理模块和代理模块,
所述管理模块用于获取API网关的配置数据;根据所述统一数据模型,将所述配置数据转换为API网关相应类型的配置信息;并将所述配置信息发送给代理模块;
所述代理模块用于根据接收到的配置信息,更新所述API网关的配置。
优选的,所述管理模块包括配置子模块,所述配置子模块包括Web管理界面和/或对外API接口;所述Web管理界面和对外API接口用于获取配置数据。
优选的,所述管理模块还包括注册子模块;
所述代理模块获取API网关的信息,向注册子模块发送注册请求,所述注册请求包括API网关的类型、名称和端口;
所述注册子模块根据所接收到的注册请求,对所述API网关进行注册,并为所述API网关分配ID。
优选的,所述管理模块包括配置数据存储子模块、配置信息生成子模块和配置信息同步模块;
所述数据存储子模块用于保存配置数据;
所述配置信息生成子模块用于读取数据存储子模块中的API网关配置数据,从注册子模块中获取API网关的类型,根据所述统一数据模型,将所述配置数据转换为相应的配置信息;
所述配置信息同步模块用于接收代理模块的查询请求,并根据所述查询请求,将相应的配置信息发送给代理模块。
优选的,所述代理模块集成在所述API网关中,并随API网关启动而初始化;
初始化后,代理模块检测所述API网关,并生成注册请求。
优选的,所述代理模块采用长轮询的方式与管理模块通信。
优选的,所述API网关的功能包括负载均衡、限流、注册发现、配置中心、授权、监控或熔断。
与现有技术相比,本发明的有益效果为:通过建立的统一数据模型,将配置数据转换为API网关类型相应的配置信息;API网关根据所述配置信息更新配置;通过统一不同类型API网关的管理,减少API网关管理的时间成本和人力成本;管理人员或开发人员生成一种配置数据,即可自动转化为相应API网关类型的配置信息,节约API网关管理成本。
附图说明
图1是本发明的API网关的管理方法流程图;
图2是本发明的API网关的管理系统逻辑框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合附图对本发明做进一步的详细描述:
一种API网关的管理方法,如图1所示,所述管理方法包括:
步骤101:获取多个API网关类型的统一数据模型,所述统一数据模型包括API网关的功能及其配置格式和参数。即统一数据模型包括了多个API网关类型的API网关的功能及其配置格式和参数,以及不同API网关类型之间配置格式和参数之间的映射。
步骤102:获取API网关的配置数据。
步骤103:根据所述API网关的类型和统一数据模型,将所述配置数据转换为所述类型的配置信息。
步骤104:将所述配置信息发送到所述API网关。
步骤105:所述API网关根据所接收到的配置信息更新配置,例如修改API网卡的运行状态。
不同类型的API网关具有不同的配置格式和参数;通过建立的统一数据模型,将配置数据转换为API网关类型相应的配置信息;API网关根据所述配置信息更新配置,例如修改微服务端口、功能等;通过统一不同类型API网关的管理,减少API网关管理的时间成本和人力成本;管理人员或开发人员生成一种配置数据,即可自动转化为相应API网关类型的配置信息,节约API网关管理成本。
其中,运维人员或开发人员可以通过可视化WEB界面或对外API接口获取API网关的配置数据;
获取配置目标API网关的类型;
根据所述类型和统一数据模型,将所述配置数据转化为目标API网关类型相应的配置信息。
在一个具体实施例中,所述API网关类型包括Zuul网关和SpringCloud网关;所述API网关的功能包括负载均衡、限流、注册发现、配置中心、授权、监控或熔断。但不限于此。例如,通过WEB界面进行配置API网关,获得标准配置数据;再根据系统的配置信息,获得目标API网关的类型;根据所述类型和统一数据模型,将所述标准配置数据,转换为相应类型的配置信息,并发送给目标API网关。
在一个具体实施例中,Zuul的开放一个API的配置如下:
由此可见,实现同一功能的不同类型API网关具有不同的配置格式和参数配置方式。根据两种类型API网关的配置参数,抽象出的统一数据模型是对两种类型网关(Zuul与SpringCloud Gateway)功能并集的抽象。但不限于此。
本发明还提供一种用于实现上述管理方法的管理系统,如图2所示,包括管理模块1和代理模块2,
管理模块1用于获取API网关的配置数据;根据所述统一数据模型3,将所述配置数据转换为所述API网关相应类型的配置信息;并将所述配置信息发送给代理模块2;
代理模块2用于根据接收到的配置信息,更新所述API网关4的配置。其中,管理模块1包括配置子模块11,所述配置子模块包括Web管理界面和/或对外API接口;管理人员通过所述Web管理界面和对外API接口生成配置数据。例如,通过Https+Json调用对外API接口(Open API)的方式生成API网关的配置数据。管理人员无需知道不同类型的AI网关配置格式,即使在API在Zuul与SpringCloud Gateway两类网关之间平滑切换升级后,管理人员也无感知。
管理模块1还可以包括注册子模块12;
代理模块2获取API网关4的信息,向注册子模块12发送注册请求,所述注册请求包括API网关的类型、名称和端口;
所述注册子模块根据所接收到的注册请求,对所述API网关进行注册,并为所述API网关分配ID。
管理模块1还可以包括配置数据存储子模块13、配置信息生成子模块14和配置信息同步模块5;
数据存储子模块13用于保存配置数据。
配置信息生成子模块14用于读取数据存储子模块中的API网关配置数据,从注册子模块中获取API网关的类型,根据所述统一数据模型,将所述配置数据转换为相应的配置信息。即统一的转换为Zuul的properties配置格式或者SpringCloud Gateway的properties配置格式。
配置信息同步模块15用于接收代理模块的查询请求,并根据所述查询请求,将相应的配置信息发送给代理模块。在一个具体实时例中,代理模块2通过LongPolling的方式发送查询请求,配置信息同步模块15实时推送所查询到的配置信息。
其中,代理模块2(Agent)集成在API网关4中,并随API网关4启动而初始化;初始化后,代理模块2检测API网关4,并生成注册请求。代理模块2获取API网关的配置信息后,将返回的配置信息解析为宿主网关所使用的Spring框架的PropertySource对象,并更新当前宿主网关的配置信息,从而改变网关的运行状态。
所述代理模块采用长轮询(LongPolling)的方式与管理模块通信,具体的通信的消息中携带API网关的ID。所述功能包括负载均衡、限流、注册发现、配置中心、授权、监控或熔断。
图2中,虚线示出了访问的流程,访问端通过http或手机端访问API网关,API网关指向后台服务。
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种API网关的管理方法,其特征在于,所述管理方法包括:
获取多个API网关类型的统一数据模型,所述统一数据模型包括API网关的功能及其配置格式和参数;
获取API网关的配置数据;
根据所述API网关的类型和统一数据模型,将所述配置数据转换为所述类型的配置信息;
将所述配置信息发送到所述API网关;
所述API网关根据所接收到的配置信息更新配置。
2.根据权利要求1所述的管理方法,其特征在于,所述API网关类型包括Zuul网关和SpringCloud网关;
所述API网关的功能包括负载均衡、限流、注册发现、配置中心、授权、监控或熔断。
3.根据权利要求1所述的管理方法,其特征在于,从可视化WEB界面或对外API接口中获取API网关的配置数据;
获取配置目标API网关的类型;
根据所述类型和统一数据模型,将所述配置数据转化为目标API网关类型相应的配置信息。
4.一种用于实现如权利要求1-3任一项所述管理方法的管理系统,其特征在于,包括管理模块和代理模块,
所述管理模块用于获取API网关的配置数据;根据所述统一数据模型,将所述配置数据转换为所述API网关相应类型的配置信息;并将所述配置信息发送给代理模块;
所述代理模块用于根据接收到的配置信息,更新所述API网关的配置。
5.根据权利要求4所述的管理系统,其特征在于,所述管理模块包括配置子模块,所述配置子模块包括Web管理界面和/或对外API接口;所述Web管理界面和对外API接口用于获取配置数据。
6.根据权利要求5所述的管理系统,其特征在于,所述管理模块还包括注册子模块;
所述代理模块获取API网关的信息,向注册子模块发送注册请求,所述注册请求包括API网关的类型、名称和端口;
所述注册子模块根据所接收到的注册请求,对所述API网关进行注册,并为所述API网关分配ID。
7.根据权利要求6所述的管理系统,其特征在于,所述管理模块包括配置数据存储子模块、配置信息生成子模块和配置信息同步模块;
所述数据存储子模块用于保存配置数据;
所述配置信息生成子模块用于读取数据存储子模块中的API网关配置数据,从注册子模块中获取API网关的类型,根据所述统一数据模型,将所述配置数据转换为相应的配置信息;
所述配置信息同步模块用于接收代理模块的查询请求,并根据所述查询请求,将相应的配置信息发送给代理模块。
8.根据权利要求7所述的管理系统,其特征在于,所述代理模块集成在所述API网关中,并随API网关启动而初始化;
初始化后,代理模块检测所述API网关,并生成注册请求。
9.根据权利要求7所述的管理系统,其特征在于,所述代理模块采用长轮询的方式与管理模块通信。
10.根据权利要求4所述的管理系统,其特征在于,API网关的功能包括负载均衡、限流、注册发现、配置中心、授权、监控或熔断。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210267420.0A CN114666216B (zh) | 2022-03-17 | 2022-03-17 | 一种api网关的管理方法和管理系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210267420.0A CN114666216B (zh) | 2022-03-17 | 2022-03-17 | 一种api网关的管理方法和管理系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114666216A true CN114666216A (zh) | 2022-06-24 |
CN114666216B CN114666216B (zh) | 2024-06-11 |
Family
ID=82030396
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210267420.0A Active CN114666216B (zh) | 2022-03-17 | 2022-03-17 | 一种api网关的管理方法和管理系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114666216B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115102853A (zh) * | 2022-06-27 | 2022-09-23 | 平安银行股份有限公司 | 一种网关配置方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8639921B1 (en) * | 2011-06-30 | 2014-01-28 | Amazon Technologies, Inc. | Storage gateway security model |
EP3407567A1 (en) * | 2017-05-26 | 2018-11-28 | ABB Schweiz AG | Application deployment in industrial internet of things |
CN108965007A (zh) * | 2018-07-19 | 2018-12-07 | 北京车和家信息技术有限公司 | Api网关接口配置更新方法及装置 |
CN110569299A (zh) * | 2018-01-29 | 2019-12-13 | 北京数聚鑫云信息技术有限公司 | 一种基于api的管理系统及管理方法 |
CN111355743A (zh) * | 2020-03-11 | 2020-06-30 | 成都卓杭网络科技股份有限公司 | 一种基于api网关的管理方法及其系统 |
CN113765701A (zh) * | 2021-08-02 | 2021-12-07 | 中企云链(北京)金融信息服务有限公司 | 一种基于永久内存缓存的网关控制方法 |
-
2022
- 2022-03-17 CN CN202210267420.0A patent/CN114666216B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8639921B1 (en) * | 2011-06-30 | 2014-01-28 | Amazon Technologies, Inc. | Storage gateway security model |
EP3407567A1 (en) * | 2017-05-26 | 2018-11-28 | ABB Schweiz AG | Application deployment in industrial internet of things |
CN110569299A (zh) * | 2018-01-29 | 2019-12-13 | 北京数聚鑫云信息技术有限公司 | 一种基于api的管理系统及管理方法 |
CN108965007A (zh) * | 2018-07-19 | 2018-12-07 | 北京车和家信息技术有限公司 | Api网关接口配置更新方法及装置 |
CN111355743A (zh) * | 2020-03-11 | 2020-06-30 | 成都卓杭网络科技股份有限公司 | 一种基于api网关的管理方法及其系统 |
CN113765701A (zh) * | 2021-08-02 | 2021-12-07 | 中企云链(北京)金融信息服务有限公司 | 一种基于永久内存缓存的网关控制方法 |
Non-Patent Citations (1)
Title |
---|
2HHHHHH: "spring-cloud配置zuul网关及配置网关过滤器", pages 1 - 6, Retrieved from the Internet <URL:https://blog.csdn.net/weixin_41595700/article/details/86521898> * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115102853A (zh) * | 2022-06-27 | 2022-09-23 | 平安银行股份有限公司 | 一种网关配置方法及装置 |
CN115102853B (zh) * | 2022-06-27 | 2023-07-28 | 平安银行股份有限公司 | 一种网关配置方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN114666216B (zh) | 2024-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102868736B (zh) | 一种云计算监控框架设计及实现方法及云计算处理设备 | |
US11108653B2 (en) | Network service management method, related apparatus, and system | |
CN109862051A (zh) | 一种微服务架构下多租户的实现方法及系统 | |
CN111290865A (zh) | 一种服务调用方法、装置、电子设备和存储介质 | |
CN101902473B (zh) | 基于网格gis的数据同步更新实现方法 | |
CN112787708A (zh) | 基于微服务的卫星地面站监控管理架构 | |
WO2005069544A1 (en) | Automatic update system and method for using a meta mib | |
CN106471465A (zh) | 服务启用器功能 | |
CN114253519B (zh) | 一种智慧园区安防管理系统及电子设备 | |
CN114615096B (zh) | 基于事件驱动架构的电信计费方法、系统及相关设备 | |
KR100601023B1 (ko) | 통합 통신 서버 및 방법 | |
CN116633775B (zh) | 一种多容器网络接口的容器通信方法及系统 | |
CN113973129A (zh) | 一种支持多种注册中心微服务的网关 | |
US11411812B2 (en) | Dynamic service creation for microservice-based integration service | |
CN114666216A (zh) | 一种api网关的管理方法和管理系统 | |
CN102684894B (zh) | 一种实现北向接口的方法及装置 | |
CN114826869A (zh) | 设备管理方法和设备管理系统 | |
CN114840329A (zh) | 一种基于区块链的云原生混合集成方法 | |
CN116260878A (zh) | 一款基于分布式计算、存储的全域业务结构服务化的业务中台系统 | |
CN114885012B (zh) | 物联网平台的系统接入方法及系统 | |
CN115714781A (zh) | 数据同步方法、混合云架构、终端及计算机可读存储介质 | |
US20210211417A1 (en) | Methods and systems to automatically interconnect devices and applications over multi-cloud providers and on-premises networks | |
WO2016127514A1 (zh) | 一种控制电子锁的方法和装置 | |
CN111404722B (zh) | 一种服务集成框架的全服务架构 | |
Pavlou | OSI Systems Management, Internet SNMP and ODP/OMG CORBA as Technologies for Telecommunications Network Management |
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 |