Sentinel 分布式流量防卫兵——简单入门

文档

introduction

官网下载地址

Release v1.8.3 · alibaba/Sentinel

官网WIKI

Sentinel · alibaba/spring-cloud-alibaba Wiki

启动Sentinel

  • 基本启动
    • java -jar sentinel-dashboard-1.8.3.jar
      • 默认端口是8080
    • java -Dserver.port=xxx -jar sentinel-dashboard-1.8.3.jar
      • 自定义端口号等参数,启动
    • http://localhost:8080/#/login
  • 用户名和密码都是 sentinel

服务集成

  • pom.xml
<!--Sentinel起步依赖-->
<dependency>
    <groupId>com.alibaba.cloud</groupId>
    <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
</dependency>
  • application.yml
server:
  port: 8005
spring:
  application:
    name: 006-nacos-consumer
  cloud:
    nacos:
      discovery:
        server-addr: localhost:8848/
    sentinel:
      transport:
        # Sentinel管理控制台的地址
        dashboard: localhost:8080
        # 微服务与Sentinel的通信端口
        port: 8179
management:
  endpoints:
    web:
      exposure:
        include: '*'

在这里插入图片描述

Sentinel默认是懒加载的,所以我们先发送一个请求,才可以在管理控制台上,查看到我们监控的微服务
并且,所有的数据都是基于内存加载的,当服务器重启后,所有的流控规则和熔断规则,需要重新设置

流控规则

在这里插入图片描述
在这里插入图片描述

1.资源名称

  • 资源名称默认为路径名称,如果通过注解进行定义资源名称,可以直接使用

2.阈值类型

QPS
每秒钟的请求响应的数量
在这里插入图片描述

如上所示,当每秒钟请求的数量超过1个时,就会抛出限流异常

并发线程数
当前的请求,只有一个线程进行处理所有的请求,如果超出一个线程所执行的工作量,就会抛出限流异常
在这里插入图片描述

测试时,建议使用一些能发送高并发请求的工具,才能看到效果

3.单机阈值

上限值,配合阈值类型

4.流控模式

直接
直接对该资源名进行流控监视
关联
当通过资源名称和关联名称进行操作时,关联名称触发了限流规则,资源名称无法访问
在这里插入图片描述

5.流控效果

快速失败
触发熔断,直接失败,抛出降级异常、流控异常
Warm Up
冷启动,避免当系统长期处于低水位的情况下,如果此时流量激增,很可能将整个系统拖垮
在冷启动规定的预热时间时间内,此时的触发的阈值只有原来阈值的三分之一,当冷启动的时间过去后,才会恢复原来的阈值,有一个预热过程
在这里插入图片描述
排队等待
让请求匀速的执行
出现限流异常
在这里插入图片描述

熔断规则

在这里插入图片描述
在这里插入图片描述

1.熔断策略

慢调用比例
当请求响应的时间,超过了设置的RT 平均响应时间 时,就会被认为是慢调用,满足规则时则会熔断降级方法
在这里插入图片描述
异常比例
按照出现异常的比例,进行服务的熔断
异常数
按照出现的异常数量,进行服务的熔断

2.最大RT

最大的响应时间,超过则为慢调用,只有慢调用比例才会使用该值进行设置

3.比例阈值

设置 0.0 ~ 1.0 的区间值,代表 0% ~ 100%

4.熔断时长

熔断降级的时间,可以理解为断路持续时间

5.最小请求数

至少发送多少次请求,才可以被记录统计

6.统计时长

当前的规则计时的时间

  • 17
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值