springcloud gateway(scg)-sentinel nacos配置-流控篇

springcloud gateway(scg)-sentinel nacos配置-流控篇,第1张

首先我看了很多有人改造sentinel dashboard的资料,教如何通过修改源码重新打包dashboard的,但考虑到自行修改编译的风险,我还是采用了官方建议的动态配置方式,程序通过nacos加载sentinel相关的规则配置。

此文描述记录一下scg的配置方式。

1.等同介绍

首先举个例子,下图dashboard配置等同json的配置

[{
	"resourceMode": 0,
	"resource": "payment-gary",
	"grade": 1,
	"count": 2,
	"intervalSec", 1,
	"controlBehavior": 0,
	"burst": 0
}]

2.配置详解
参数名描述属性类型枚举项说明
resourceModeAPI类型数字0ROUTE ID区分,不设置此为默认值
1API分组区分
resource资源名称字符——API名称,在网关应用中指scg的routes:id
grade阈值类型数字0按线程数
1按QPS,不设置此为默认值
count阈值数字——QPS类型就是限制时间间隔的请求数
线程数类型就是指并行的线程数
QPS阈值类型专属配置项目
intervalSec间隔数字——单位是秒,dashboard上面有单位下拉框,实际也是换算秒后存储的
controlBehavior流控方式数字0快速失败,不设置此为默认值
2匀速排队
burst额外流量数字——快速失败流控方式下,允许突出的流量数
maxQueueingTimeoutMs排队时间数字——单位是毫秒,匀速排队流控方式下,允许排队的时间
以下是设置了针对请求属性的配置,笔者没有此需求所以上面的实例图中也没有配置,此处列出是顺手之事,请有需要的人参考
paramItem请求属性keyjson对象——为配置的json key,value就是余下的配置项
parseStrategy参数属性数字0ClientIP,请求方的IP
1RemoteHost,请求的host
2Header,请求的Header参数值
3URL参数
4Cookie,请求的Cookie参数
fieldName参数名称字符——若参数属性选择 Header 模式或 URL 参数模式,则需要指定对应的 header 名称或 URL 参数名称
matchStrategy参数值匹配策略数字0精确匹配,不设置此为默认值
1子串查询匹配
2正则表达式匹配
pattern参数值匹配内容字符——按匹配策略来配置的值,只有匹配该模式的请求属性值会纳入统计和流控;若为空则统计该请求属性的所有值。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/756237.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-30
下一篇 2022-04-30

发表评论

登录后才能评论

评论列表(0条)

保存