SpringCloud Alibaba之Sentinel的流控规则简介

本文深入解析Sentinel流控规则,包括流控规则的配置方法、不同流控模式(直接、关联、链路)的使用场景及效果,以及流控效果(快速失败、WarmUp预热、匀速排队)的具体实现原理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

所有代码都在github上:https://github.com/demonruin/cloud2020/tree/master

一、流控规则 :流量限制控制规则

Sentinel-dashboard中的流控规则菜单项:

  • 资源名:唯一名称,默认请求路径
  • 针对来源: Sentine可以针对调用者进行限流,填写微服务名,默认default (不区分来源)
  • 阈值类型/单机阈值:
    •  QPS (每秒钟的请求数量) :当调用该api的QPS达到阈值的时候,进行限流
    •  线程数:当调用该api的线程数达到阈值的时候,进行限流
  • 是否集群:不需要集群
  • 流控模式:
    •  直接: api达到限流条件时,直接限流
    •  关联:当关联的资源达到阈值时,就限流自己
    •  链路:只记录指定链路上的流量(指定资源从入口资源进来的流量,如果达到阈值,就进行限流) [ api级别的针对来源]
  • 流控效果:
    •   快速失败:直接失败,抛异常
    •   Warm Up:根据codeFactor (冷加载因子,默认3)的值,从阈值/codeFactor, 经过预热时长,才达到置的QPS阈值
    •  排队等待:匀速排队,让请求以匀速的速度通过,阈值类型必须设置为QPS,否则无效

二、流控模式:

配置流控模式有两种方法:

1、在簇点链路中找到对应的资源名(即访问路径---唯一的),然后操作添加 流控

2、在流控规则里面  新增流控规则 填写 资源名等配置,和1操作等同

下面对不同的模式进行测试:

1、default模式:

就是直接-->快速失败模式  也即系统默认模式,进行测试设置,查看测试结果:设置default、QPS类型,单机阈值为1(即1秒请求一次),流控模式为直接、流控效果为快速失败。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值