CN116192758A - 一种基于网关服务Kong的多规则组合限流控制器 - Google Patents
一种基于网关服务Kong的多规则组合限流控制器 Download PDFInfo
- Publication number
- CN116192758A CN116192758A CN202310074275.9A CN202310074275A CN116192758A CN 116192758 A CN116192758 A CN 116192758A CN 202310074275 A CN202310074275 A CN 202310074275A CN 116192758 A CN116192758 A CN 116192758A
- Authority
- CN
- China
- Prior art keywords
- limiting
- current
- gateway
- service
- 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.)
- Granted
Links
- 101100264195 Caenorhabditis elegans app-1 gene Proteins 0.000 description 4
- 230000004044 response Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000000034 method Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/20—Traffic policing
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供的一种基于网关服务Kong的多规则组合限流控制器,所述控制器包括:在网关部署之前,将新限流算法的执行文件放置在kong/kong/plugins/rate‑limiting‑pro目录下,网关会自动注册新的限流插件;网关服务部署成功并且运行之后,为route绑定新限流插件,设置route,service,consumer的限流策略,分别为P1,P2,P3;当P1,P2,P3中的任一限流策略次数重置之后,客户端重新发起请求,当次请求正常响应。实现多维度的限流管理。
Description
技术领域
本发明涉及微服务领域,尤其涉及一种基于网关服务Kong的多规则组合限流控制器。
背景技术
在微服务中,通常同时存在多个子模块,每一个子模块都代表不同的应用。应用之间通过网关进行服务调用。出于网络安全和流量管理的考虑,大部分场景都会用网关进行服务限流,现有技术中常见的限流算法包括:
基于service的限流算法,网关在service对象上进行限流,网关每调度一次service,流量统计加一。
基于route的限流算法,网关在route对象上进行限流,网关接收请求之后,进行路由匹配,匹配到指定路由之后,当前route的流量统计加一。
基于consumer的限流算法,网关在consumer对象上进行限流,网关接收请求之后,根据请求头中的用户标识,为指定用户的流量统计加一。
现有网关服务只能进行单方面的限流,当任一限流策略满足时,当次请求立刻返回限流标识。这种单一的限流策略无法满足当前服务行业日益精细的限流要求。
发明内容
鉴于上述问题,提出了本发明以便提供克服上述问题或者至少部分地解决上述问题的一种基于网关服务Kong的多规则组合限流控制器。
根据本发明的一个方面,提供了一种基于网关服务Kong的多规则组合限流控制器,所述控制器包括:
在网关部署之前,将新限流算法的执行文件放置在
kong/kong/plugins/rate-limiting-pro目录下,网关会自动注册新的限流插件;
网关服务部署成功并且运行之后,为route绑定新限流插件,设置
route,service,consumer的限流策略,分别为P1,P2,P3;
当P1,P2,P3中的任一限流策略次数重置之后,客户端重新发起请求,当次请求正常响应。
可选的,所述在网关部署之前,将新限流算法的执行文件放置在kong/kong/plugins/rate-limiting-pro目录下,网关会自动注册新的限流插件步骤之后还包括:网关服务器启动之后,通过API接口查看是否存在新的算法插件rate-limiting-pro。
可选的,所述网关服务部署成功并且运行之后,为route绑定新限流插件,设置route,service,consumer的限流策略,分别为P1,P2,P3之后还包括:当P1,P2,P3限流策略同时满足时,当次请求返回限流标志。
本发明提供的一种基于网关服务Kong的多规则组合限流控制器,所述控制器包括:在网关部署之前,将新限流算法的执行文件放置在kong/kong/plugins/rate-limiting-pro目录下,网关会自动注册新的限流插件;网关服务部署成功并且运行之后,为route绑定新限流插件,设置route,service,consumer的限流策略,分别为P1,P2,P3;当P1,P2,P3中的任一限流策略次数重置之后,客户端重新发起请求,当次请求正常响应。实现多维度的限流管理。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本发明实施例提供的一种基于网关服务Kong的多规则组合限流控制器的工作流程图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本发明的说明书实施例和权利要求书及附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元。
下面结合附图和实施例,对本发明的技术方案做进一步的详细描述。
为了更好的处理微服务内各子模块的流量管理,实现服务之间针对不同维度和对象的流量限制。本发明提供了一种高自由度,多规则组合的限流插件,允许用户自由设置服务之间的限流维度和限流方式,单维度或多维度的进行服务限流,最大化保证服务可用性和网络安全。
本发明提供的工作原理
S1、在网关部署之前,将新限流算法的执行文件放置在kong/kong/plugins/rate-limiting-pro目录下,网关会自动注册新的限流插件。网关服务器启动之后,通过API接口查看是否存在新的算法插件:rate-limiting-pro。
S2、网关服务部署成功并且运行之后,为route绑定新限流插件,设置route,service,consumer的限流策略,记为P1,P2,P3。当P1,P2,P3限流策略同时满足时,当次请求返回限流标志:{"message":"APIratelimitexceeded"}。
S3、当P1,P2,P3中的任一限流策略次数重置之后,客户端重新发起请求,当次请求正常响应。
通过本发明的网关限流插件,实现多维度的限流管理。在现有的网关中,为consumer设置限流策略,当consumer请求次数达到限流频率时,当次请求返回限流标识;也可以为route设置限流策略,当route匹配次数达到限流频率时,当次请求返回限流标识;为service设置分流策略,当service访问次数达到限流频率时,当次请求返回限流标识。现有网关服务只能进行单方面的限流,当任一限流策略满足时,当次请求返回限流标识,无法满足当前服务行业日益精细的限流要求。本发明中的限流插件,不仅实现了上述的三种限流方式,更在基础上实现了多维度组合限流,允许用户采用多维度组合的方式进行限流,例如
route+service+consumer,route+service,route+consumer,service+con sumer的限流组合方式,对微服务子模块进行定制化限流。
另外,通过插件的方式实现新的限流算法,不会影响原有的网关服务。依托于网关服务Kong优秀的插件机制,新的限流算法插件可以被网关服务自动注册,无需手动注册,降低网关服务错误下线的风险。
前提条件:在微服务中,启动三个子模块应用,记为App1,App2,App3;启动带有新限流插件的网关服务。
将App1注册到网关中,供App2,App3使用。在网关中,创建一条新的路由R1,并将App1做为后端服务;为这一条路由创建限流策略:route每分钟1/次,service每分钟1/次,consumer每分钟1/次。
如图1所示,App2发起API请求,第一次访问能够返回正常响应,在一分钟内再次访问时,由于达到了限流策略要求,所以返当次请求返回限流标识。
在App2访问限制的场景下,App3发起API请求,由于App3和App2的用户标识不同,所以App2发起的API请求能够返回正常响应。当App2在一分钟内再次访问时,由于达到了限流策略要求,所以当次请求返回限流标识。
等待一分钟之后,App1的限流策略已重置访问次数,App2,App3发起API请求,能够返回正常响应。
有益效果:本发明提供了一种高自由度,多规则组合的限流插件,允许用户自由设置服务之间的限流维度和限流方式,单维度或多维度的进行服务限流,最大化保证服务可用性和网络安全。
以上的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (3)
1.一种基于网关服务Kong的多规则组合限流控制器,其特征在于,所述控制器包括:
在网关部署之前,将新限流算法的执行文件放置在
kong/kong/plugins/rate-limiting-pro目录下,网关会自动注册新的限流插件;
网关服务部署成功并且运行之后,为route绑定新限流插件,设置
route,service,consumer的限流策略,分别为P1,P2,P3;
当P1,P2,P3中的任一限流策略次数重置之后,客户端重新发起请求,当次请求正常响应。
2.根据权利要求1所述的一种基于网关服务Kong的多规则组合限流控制器,其特征在于,所述在网关部署之前,将新限流算法的执行文件放置在
kong/kong/plugins/rate-limiting-pro目录下,网关会自动注册新的限流插件步骤之后还包括:网关服务器启动之后,通过API接口查看是否存在新的算法插件rate-limiting-pro。
3.根据权利要求1所述的一种基于网关服务Kong的多规则组合限流控制器,其特征在于,所述网关服务部署成功并且运行之后,为route绑定新限流插件,设置route,service,consumer的限流策略,分别为P1,P2,P3之后还包括:当P1,P2,P3限流策略同时满足时,当次请求返回限流标志。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310074275.9A CN116192758B (zh) | 2023-02-07 | 2023-02-07 | 一种基于网关服务Kong的多规则组合限流控制器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310074275.9A CN116192758B (zh) | 2023-02-07 | 2023-02-07 | 一种基于网关服务Kong的多规则组合限流控制器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116192758A true CN116192758A (zh) | 2023-05-30 |
CN116192758B CN116192758B (zh) | 2024-03-29 |
Family
ID=86433902
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310074275.9A Active CN116192758B (zh) | 2023-02-07 | 2023-02-07 | 一种基于网关服务Kong的多规则组合限流控制器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116192758B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117596080A (zh) * | 2024-01-18 | 2024-02-23 | 北京安博通科技股份有限公司 | 一种终端用户流量的访问控制方法、设备、终端及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020053029A1 (en) * | 2000-10-30 | 2002-05-02 | Katsuichi Nakamura | Network access control method, network system using the method and apparatuses configuring the system |
US20090254967A1 (en) * | 2008-04-02 | 2009-10-08 | J Premkumar | Virtual private networks (vpn) access based on client workstation security compliance |
CN110535776A (zh) * | 2019-07-09 | 2019-12-03 | 中移(杭州)信息技术有限公司 | 网关限流方法、装置、网关、系统及存储介质 |
CN111787073A (zh) * | 2020-06-18 | 2020-10-16 | 多加网络科技(北京)有限公司 | 一种统一服务的限流熔断平台及其方法 |
CN112035182A (zh) * | 2020-08-31 | 2020-12-04 | 浪潮云信息技术股份公司 | 一种基于kong的API网关监控方法及系统 |
-
2023
- 2023-02-07 CN CN202310074275.9A patent/CN116192758B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020053029A1 (en) * | 2000-10-30 | 2002-05-02 | Katsuichi Nakamura | Network access control method, network system using the method and apparatuses configuring the system |
US20090254967A1 (en) * | 2008-04-02 | 2009-10-08 | J Premkumar | Virtual private networks (vpn) access based on client workstation security compliance |
CN110535776A (zh) * | 2019-07-09 | 2019-12-03 | 中移(杭州)信息技术有限公司 | 网关限流方法、装置、网关、系统及存储介质 |
CN111787073A (zh) * | 2020-06-18 | 2020-10-16 | 多加网络科技(北京)有限公司 | 一种统一服务的限流熔断平台及其方法 |
CN112035182A (zh) * | 2020-08-31 | 2020-12-04 | 浪潮云信息技术股份公司 | 一种基于kong的API网关监控方法及系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117596080A (zh) * | 2024-01-18 | 2024-02-23 | 北京安博通科技股份有限公司 | 一种终端用户流量的访问控制方法、设备、终端及系统 |
CN117596080B (zh) * | 2024-01-18 | 2024-04-23 | 北京安博通科技股份有限公司 | 一种终端用户流量的访问控制方法、设备、终端及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN116192758B (zh) | 2024-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110214459B (zh) | 业务处理的方法和设备 | |
CN109842906B (zh) | 一种通信的方法、装置及系统 | |
CN101141418B (zh) | 基于策略的家庭网络业务识别的系统和方法 | |
KR101562155B1 (ko) | 서비스 프로세스 제어 방법 및 네트워크 장치 | |
CN110348242A (zh) | 业务请求处理方法及装置 | |
CN109688186B (zh) | 数据交互方法、装置、设备及可读存储介质 | |
CN102316416B (zh) | 终端接入方法和无线通信网络 | |
CN116192758B (zh) | 一种基于网关服务Kong的多规则组合限流控制器 | |
CN109088909B (zh) | 一种基于商户类型的服务灰度发布方法及设备 | |
CN108810993A (zh) | 网络切片选择方法、设备、ue、控制面功能实体及介质 | |
CN109842895B (zh) | 一种网络可靠性配置方法、信息传输方法和装置以及系统 | |
CN112583628A (zh) | 核心网能力调用方法及系统 | |
WO2015000295A1 (zh) | 一种业务调度方法、装置及网络设备 | |
CN107528712A (zh) | 访问权限的确定、页面的访问方法及装置 | |
WO2022052875A1 (zh) | 终端跨区域通信方法、网元设备及存储介质 | |
CN109246078A (zh) | 一种数据交互方法及服务器 | |
CN107124424A (zh) | 实名审计方法、设备和系统 | |
CN105592141B (zh) | 一种连接数控制方法及装置 | |
CN113098722A (zh) | 多网卡管理方法、装置及计算机可读存储介质 | |
KR101471316B1 (ko) | 디바이스 사이의 접속을 제어하는 방법 | |
CN112788518A (zh) | 一种位置服务的处理方法及相关设备 | |
CN102281189A (zh) | 一种基于第三方设备私有属性的业务实现方法及其装置 | |
JP5169859B2 (ja) | ネットワークシステム、ネットワーク端末のアドレス選択方法、ネットワーク端末のアドレス選択装置 | |
CN111416720B (zh) | 一种智能靶向计费、配置智能靶向计费的方法和装置 | |
CN110213399A (zh) | 基于netfilter机制的dhcp服务器探测方法、存储介质及终端 |
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 | ||
CB02 | Change of applicant information |
Address after: Floor 9c-2, Huzhou multimedia Industrial Park, No. 999, Wuxing Avenue, Huzhou City, Zhejiang Province 313000 Applicant after: Zhejiang Jiuzhou Future Information Technology Co.,Ltd. Address before: Floor 9c-2, Huzhou multimedia Industrial Park, No. 999, Wuxing Avenue, Huzhou City, Zhejiang Province 313000 Applicant before: Zhejiang Jiuzhou cloud Mdt InfoTech Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |