[发明专利]一种智能网关动态限流实现方法在审
申请号: | 202110769964.2 | 申请日: | 2021-07-06 |
公开(公告)号: | CN113595925A | 公开(公告)日: | 2021-11-02 |
发明(设计)人: | 姜勇;杨雷;李印;王玉娟;吕浩 | 申请(专利权)人: | 中企云链(北京)金融信息服务有限公司 |
主分类号: | H04L12/803 | 分类号: | H04L12/803;H04L29/06;H04L29/08;H04L12/24 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100078 北京市丰台*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 智能 网关 动态 限流 实现 方法 | ||
本发明公开了一种智能网关动态限流实现方法,包括:启动智能网关,接收到服务请求,缓存智能网关的配置信息加载至内存中;自动刷新内存缓存,同时将缓存过期时间重新计算;读取配置信息;进行黑白名单校验,进行登录校验和权限校验,登录成功,从长期缓存中获取请求体改写映射规则,执行请求体改写;进行智能网关分布式集群限流控制,配置网关的本地限流大小,当流量过大时返回限流响应码;进行本地熔断控制;转发服务请求至智能网关集群,处理请求,实现负载均衡。本发明部署架构简单,解耦数据库与网关,实现了个性化动态限流与熔断,提供一个分布式部署、高可用性、高并发能力的智能网关实现方法,增加通讯异常的容错率,扩大使用场景。
技术领域
本发明内容涉及网关技术领域,尤其涉及一种智能网关动态限流实现方法。
背景技术
随着互联网的发展,网络访问流量越来越大,对服务的稳定性和可用性要求越来越高,高可用已经作为衡量一个服务性能的重要标准。
网关通常作为API的统一出入口,同时提供负载均衡、服务降级、限流、熔断等功能。虽然这些功能的存在能够降低后端服务宕机的风险,在后端服务宕机时也可以返回固定的内容,但是这些功能不能保证在后端服务宕机后继续提供稳定准确的输出,严重降低了用户体验。
网关是一个服务,是系统的唯一入口,它封装了系统内部架构,为客户端统一提供服务,在微服务架构中以微服务网关的身份存在,将外部与内部服务进行隔离,把用户的请求转发给后台服务,后台服务再把结果交给网关、向后台响应。
网关本身没有逻辑,能够承受的压力比后台服务大很多,但是现有技术方案中存在的问题包括:
(1)请求过多时用户等待时间变长,超出用户容量时网关无法继续提供可用服务;
(2)目前的高并发请求网关,与数据库交互压力大,即使通过缓存数据库信息也是短期缓存,无法长期脱离数据库运行,造成数据库频繁使用,稳定性低;
(3)目前的网关限流方案,无法实现对请求体的每个请求参数实现可调节的个性化动态限流。
因此需要解决上述技术中的问题,改进技术方案,从而达到提高系统和服务的可用性的效果。
发明内容
本发明内容所要解决的技术问题是针对背景技术中所涉及到的缺陷,提供一种智能网关动态限流实现方法,解决了网关与数据库交互过于频繁的问题,动态修改配置信息,实现动态负载均衡。
本发明内容的目的及解决的技术问题是采用以下技术方案来实现的:
一种智能网关动态限流实现方法,包括:
S1:预先配置限流、熔断、登录相关参数,启动智能网关,接收到服务请求后,缓存智能网关的预设周期内所有配置信息,将其加载至内存中;
S2:通过本地定时任务按周期自动刷新内存缓存,同时将缓存过期时间重新计算,所述缓存过期时间计算为当前时间的预设周期天数后;
或,修改配置信息成功后,发送指令刷新内存缓存,同时将缓存过期时间重新计算,所述缓存过期时间计算为刷新指令发出后;
S3:读取配置信息;
S4:智能网关根据请求方法路径获取登录token信息,进行黑白名单校验,判断请求类型后进行登录校验和权限校验,校验不通过登录失败,则token信息失效,返回限流响应码;
校验通过后登录成功,从长期缓存中获取请求体改写映射规则,执行请求体改写;
S5:进行智能网关分布式集群限流控制,根据配置的参数名和参数值,以及网关集群数量,配置每台网关的本地限流大小,当流量过大时返回限流响应码;
S6:配置熔断参数,进行本地熔断控制;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中企云链(北京)金融信息服务有限公司,未经中企云链(北京)金融信息服务有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110769964.2/2.html,转载请声明来源钻瓜专利网。