目录
Sentinel简单介绍
是什么?
Hystrix的阿里版
可以用在以下几个地方
Hystrix与Sentinel的对比
最大的优点就是它功能强大且可以直接在web界面设置很多事情
去哪下?
https://github.com/alibaba/Sentinel/releases
能干吗?
细说可以干绿色这部分的事情
粗说可以做以下四部分的事情
怎么玩?
安装Sentinel控制台
sentinel组件由两部分构成
后台和前台8080
安装步骤
如何访问sentinel管理界面?
直接访问本地的8080端口,密码和账号都是sentinel
初始化演示工程
新建module步骤
1.新建项目cloudalibaba-sentinel-service8401
2.改pom
新加三个依赖
3.改yml文件
4.写启动类
5.写业务类测试
6.测试
sentinel采用的是懒加载模式,需要执行一次行为才会加载出来
流控规则
基本介绍
流控模式
直接(默认)
配置
关联
比如支付模块,B接口是支付模块,A接口是下单模块,B接口达到阈值了,那么就限流A接口,意思就是当我支付接口扛不住了,那就限流下单接口。意味着削峰了。
链路
流控效果
直接->快速失败(默认的流控处理)
预热
官网介绍:
排队等待
降级规则
基本介绍
进一步说明:
sentinel没用半开的状态,系统会自动去检测请求是否恢复正常
降级策略实战
RT
测试接口如下:
结论
异常比例
.
异常数
异常数是按照分钟统计的
热点key限流
基本介绍
我们只对p1参数做限流
参数例外项(当p1是某个特殊值的时候就不被限流)
系统规则
是什么?
对整个系统的流量进行控制,有5个限流方法
@SentinelResource
按资源名称限流+后续处理
按照url地址+后续处理
上面兜底方案面临的问题
客户自定义限流处理逻辑
新建限流类
如何用
服务熔断功能
如果你没有配置服务熔断功能,那么如果代码出错了报错就会给客户体验感不好,所以我们要使用服务熔断功能。
规则持久化
一旦我们重启应用,sentinel规则将消失,生产环境需要将配置规则进行持久化!
配置持久化的步骤:
添加pom文件依赖
在yml文件添加配置
在nacos中新增配置
配置说明: