sentinal 流控规则 关联模式 流控效果 排队等待 降级策略 热点规则

在这里插入图片描述
默认是直接模式,直接模式的单机阈值是做用到资源名上的。也就是/testA。
但如果是关联模式。单机阈值是做用到关联资源上的。也就是/testB。
也就是说qps1是做用到/testB上。
关联模式就是当关联资源超出阈值时。也就是qps超过1时。资源名会被禁止访问。

可以验证一下。
利用Postman发送一20个请求,每隔0.3秒。也就是大概每秒发送3个请求。也就是qps=3

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
点击run。这时/testB做为关联资源超出我们之前设置的qps=1的阈值。/testA也就被禁止访问了。

在这里插入图片描述

排队等待
在这里插入图片描述

超过这个阈值的请求,不会被直接禁止访问,直接禁止访问的是快速失败,排队等待的是请求会排队处理,在你这个阈值的上限上。
用postman发一个请求,小于1秒一次。
在这里插入图片描述

观察控制台可以看到,而服务线程依旧是以最高的设置阈值qps=1,1秒一次来处理请求的。有点像消息队列。
在这里插入图片描述

降级策略
1。RT
在这里插入图片描述
RT图示
在这里插入图片描述
简单来说就是,当qps>5时,平均请求响应时间>RT值时,图示的是200 ms,也就是平均请求响应时间大于200ms时,这时,触发降级,也就是断路器打开了,熔断了。此时资源在时间窗口的时间内不允许访问,图示的时间窗口值是1也就是1s内不允许访问,这时访问会报错。也就是熔断了。要等1s后才可以访问。

2。异常比例
在这里插入图片描述

图示
在这里插入图片描述
上面这个例子的意思是,/testD这个资源,错误比例大于20%这个资源就会报错,在一秒的窗口期内不允许访问.
代码故意弄错

 @GetMapping("/testD")
    public String testD() {
//        try {
//            Thread.sleep(1000);
//        } catch (InterruptedException e) {
//            e.printStackTrace();
//        }
//        log.info("testD 测试RT");

        log.info("testD异常比例");
        int age=10/0;
        return "----testD";
    }   

在浏览器在使劲刷新,超过qps=5,又因异常100%超过了设置的异常20%,就会看到以下报错.
在这里插入图片描述

热点规则
图示
在这里插入图片描述
简单来说就是,对资源的参数进行qps限流qps=1。参数索引就是,参数的顺序.这里是零就是资源的第一个参数.也就是对p1参数进行限流,p2不限流,可以随便访问.
在这里插入图片描述


    @GetMapping("/testHotKey")
    @SentinelResource(value = "testHotKey",blockHandler = "deal_testHotKey")
    public String testHotKey(@RequestParam(value = "p1",required = false) String p1,
                             @RequestParam(value = "p2",required = false) String p2){
        return "----testHotKey";
    }
	//报错方法
    public String deal_testHotKey(String p1, String p2, BlockException exception){
        return "----deal_testHotKey,))))))";
    }

疯狂刷新报错
在这里插入图片描述

热点规则高级选项
在这里插入图片描述

也就是p1参数为5的时候,阈值为100,高级选项能指定参数的特定值设置一个不同的阈值.

刷新测试
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值