[发明专利]一种基于网关的限流改进方案在审
申请号: | 202111040198.2 | 申请日: | 2021-09-06 |
公开(公告)号: | CN113904988A | 公开(公告)日: | 2022-01-07 |
发明(设计)人: | 吴振 | 申请(专利权)人: | 天翼电子商务有限公司 |
主分类号: | H04L47/10 | 分类号: | H04L47/10;H04L12/66 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 102200 北京市昌平*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 网关 限流 改进 方案 | ||
本发明公开了一种基于网关的限流改进方案,包括以下步骤:S1:引入开发所需要的POM依赖项;S2:自定义熔断限流过滤器,根据请求的服务信息获取服务的请求路径作为资源名,此步骤也可以获取有业务含义的标识,比如请求中携带的商户服务协议标识等;S3:将第S2获取的资源名作为参数传入,设置ResourceTypeConstant类型为COMMON_WEB,设置EntryType;为IN,以获取资源保护的Entry实体;S4:在try‑catch中抓取BlockException异常,并设置异常返回码。本发明基于流量的服务熔断限流优化能降低依赖外部分布式缓存的风险,提供针对业务的多场景多维度的熔断限流需求。
技术领域
本发明涉及计算机软件技术领域,特别涉及一种基于网关的限流改进方案。
背景技术
API网关是一种反向路由,屏蔽内部细节,作为后端服务的统一入口,可提供请求路由、限流等服务,其他应用依赖于网关本身的服务能力。现有的网关限流基于redis实现,在高并发的场景下达到redis的IO极限,网关自身服务能力被拖垮,不能提供熔断功能,且需要多维度限流的需求。本限流熔断框架,以流量为切入点,从流量控制、熔断降级等多个维度保护服务的稳定性。
发明内容
本发明要解决的技术问题是克服现有技术的缺陷,提供一种基于网关的限流改进方案。
本发明提供了如下的技术方案:
本发明一种基于网关的限流改进方案,包括以下步骤:
S1:引入开发所需要的POM依赖项;
S2:自定义熔断限流过滤器,根据请求的服务信息获取服务的请求路径作为资源名,此步骤也可以获取有业务含义的标识,比如请求中携带的商户服务协议标识等;
S3:将第S2获取的资源名作为参数传入,设置ResourceTypeConstant类型为COMMON_WEB,设置EntryType;
为IN,以获取资源保护的Entry实体;
S4:在try-catch中抓取BlockException异常,并设置异常返回码;
S5:在finally子句中退出entry;
S6:增加QPSTypeEnum的类型QPS_TYPE_SENTINEL_INF(S1001,sentinel限流);
S7:扩展QpsService服务,在getQpsType的方法中返回S6中所定义的类型。
与现有技术相比,本发明的有益效果如下:
本发明基于流量的服务熔断限流优化能降低依赖外部分布式缓存的风险,提供针对业务的多场景多维度的熔断限流需求。
具体实施方式
应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
实施例1
本发明提供一种基于网关的限流改进方案,为模拟出现的异常情况,做如下的实施:
S1:环境准备,熔断限流控制台启动,并正常处理请求以及监控数据,测试应用能正常运行,限流类型选择为QPS_TYPE_SENTINEL_INF,且可以处理请求。
S2:测试应用启动时,熔断限流控制台不设置限流规则,测试应用发出请求,请求全部通过。
S3:测试应用启动后,熔断限流控制台设置限流规则,规则为基于某应用的服务名作为资源名,阈值类型为QPS,阈值为50。
S4:测试应用被请求数大于50的时候,限流过滤器被调用,有请求被限流,并抛出异常码返回给上游调用接口。
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天翼电子商务有限公司,未经天翼电子商务有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111040198.2/2.html,转载请声明来源钻瓜专利网。