没有合适的资源?快使用搜索试试~ 我知道了~
1、API类型:RoutID\API分组 2、API名称:RoutID\API分组名称 3、阈值类型:QPS 4、QPS阈值:阈值 5、间隔时间:秒、时、分 6
资源详情
资源评论
资源推荐
一. 概述
1.1介绍
Sentinel 引入了 Sentinel API Gateway Adapter Common 模块,此模块中包含网关限流的规则和自定义 API 的实
体和管理逻辑:
GatewayFlowRule:网关限流规则,针对 API Gateway 的场景定制的限流规则,可以针对不同 route_id或自
定义的 API 分组进行限流,支持针对请求中的参数、Header、来源 IP 等进行定制化的限流。
ApiDefinition:用户自定义的 API 定义分组,可以看做是一些 URL 匹配的组合。比如我们可以定义一个 API
叫 my_api,请求 path 模式为 /foo/** 和 /baz/** 的都归到 my_api 这个 API 分组下面。限流的时候可以针
对这个自定义的 API 分组维度进行限流。
1.2 参数说明
其中网关限流规则 GatewayFlowRule 的字段解释如下:
resource:资源名称,可以是网关中的 route 名称或者用户自定义的 API 分组名称。
resourceMode:规则是针对 API Gateway 的 route(RESOURCE_MODE_ROUTE_ID)还是用户在 Sentinel
中定义的 API 分组(RESOURCE_MODE_CUSTOM_API_NAME),默认是 route。
grade:限流指标维度,同限流规则的 grade 字段
count:限流阈值
intervalSec:统计时间窗口,单位是秒,默认是 1 秒
controlBehavior:流量整形的控制效果,同限流规则的 controlBehavior 字段,目前支持快速失败和匀速排
队两种模式,默认是快速失败。
burst:应对突发请求时额外允许的请求数目。
maxQueueingTimeoutMs:匀速排队模式下的最长排队时间,单位是毫秒,仅在匀速排队模式下生效。
paramItem:参数限流配置。若不提供,则代表不针对参数进行限流,该网关规则将会被转换成普通流控规
则;否则会转换成热点规则。其中的字段:
parseStrategy:从请求中提取参数的策略,目前支持提取来源
IP(PARAM_PARSE_STRATEGY_CLIENT_IP)、Host(PARAM_PARSE_STRATEGY_HOST)、任意
Header(PARAM_PARSE_STRATEGY_HEADER)和任意 URL 参数
(PARAM_PARSE_STRATEGY_URL_PARAM)四种模式。
fieldName:若提取策略选择 Header 模式或 URL 参数模式,则需要指定对应的 header 名称或 URL 参数名
称。
pattern 和 matchStrategy:为后续参数匹配特性预留,目前未实现。
相关参数
publicfinalclassSentinelGatewayConstants{
publicstaticfinalintAPP_TYPE_GATEWAY=1;
publicstaticfinalintRESOURCE_MODE_ROUTE_ID=0;
publicstaticfinalintRESOURCE_MODE_CUSTOM_API_NAME=1;
publicstaticfinalintPARAM_PARSE_STRATEGY_CLIENT_IP=0;
publicstaticfinalintPARAM_PARSE_STRATEGY_HOST=1;
publicstaticfinalintPARAM_PARSE_STRATEGY_HEADER=2;
1.3 网关限流参数组合说明:
限流参数组合1: (按照QPS限流:快速失败)
限流参数组合2: (按照QPS限流:匀速排队)
限流参数组合3: (按照线程数限流)
限流参数组合4: (按照请求参数限流: Client IP\Remote Host)
IP: 0 HOST:1
publicstaticfinalintPARAM_PARSE_STRATEGY_URL_PARAM=3;
publicstaticfinalintPARAM_PARSE_STRATEGY_COOKIE=4;
publicstaticfinalintURL_MATCH_STRATEGY_EXACT=0;
publicstaticfinalintURL_MATCH_STRATEGY_PREFIX=1;
publicstaticfinalintURL_MATCH_STRATEGY_REGEX=2;
publicstaticfinalintPARAM_MATCH_STRATEGY_EXACT=0;
publicstaticfinalintPARAM_MATCH_STRATEGY_PREFIX=1;
publicstaticfinalintPARAM_MATCH_STRATEGY_REGEX=2;
publicstaticfinalintPARAM_MATCH_STRATEGY_CONTAINS=3;
}
1、API类型:RoutID\API分组
2、API名称:RoutID\API分组名称
3、阈值类型:QPS
4、QPS阈值:阈值
5、间隔时间:秒、时、分
6、流控方式:快速失败
7、Burstsize:0
1、API类型:RoutID\API分组
2、API名称:RoutID\API分组名称
3、阈值类型:QPS
4、QPS阈值:阈值
5、间隔时间:秒、时、分
6、流控方式:匀速排队
7、超时时间:毫秒
1、API类型:RoutID\API分组
2、API名称:RoutID\API分组名称
3、阈值类型:线程数
4、线程数:阈值
1、API类型:RoutID\API分组
2、API名称:RoutID\API分组名称
3、请求参数:ClientIP\RemoteHost
限流参数组合5:(按照请求参数限流: Header)
限流参数组合6:(按照请求参数限流: URL参数)
{
"resource":"httpbin_route",
"count":0,
"paramItem":{
"parseStrategy":0
}
}
1、API类型:RoutID\API分组
2、API名称:RoutID\API分组名称
3、请求参数:Header
4、Header名称:header名称
1、API类型:RoutID\API分组
2、API名称:RoutID\API分组名称
3、请求参数:Header
4、Header名称:header名称
5、属性值匹配:精确、子串、正则
6、匹配串:匹配串
{
"resource":"httpbin_route",
"count":0,
"paramItem":{
"parseStrategy":2,
"fieldName":"SpringCloudAlibaba"
}
}
1、API类型:RoutID\API分组
2、API名称:RoutID\API分组名称
3、请求参数:Header
4、URL参数:URL参数
1、API类型:RoutID\API分组
2、API名称:RoutID\API分组名称
3、请求参数:Header
4、URL参数:URL参数
5、属性值匹配:精确、子串、正则
6、匹配串:匹配串
剩余12页未读,继续阅读
阿汝娜老师
- 粉丝: 21
- 资源: 309
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 论文(最终)_20240430235101.pdf
- 基于python编写的Keras深度学习框架开发,利用卷积神经网络CNN,快速识别图片并进行分类
- 最全空间计量实证方法(空间杜宾模型和检验以及结果解释文档).txt
- 5uonly.apk
- 蓝桥杯Python组的历年真题
- 2023-04-06-项目笔记 - 第一百十九阶段 - 4.4.2.117全局变量的作用域-117 -2024.04.30
- 2023-04-06-项目笔记 - 第一百十九阶段 - 4.4.2.117全局变量的作用域-117 -2024.04.30
- 前端开发技术实验报告:内含4四实验&实验报告
- Highlight Plus v20.0.1
- 林周瑜-论文.docx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0