1、Sentinel (分布式系统的流量防卫兵) 是阿里开源的一套用于服务容错的综合性解决方案。
它以流量为切入点, 从流量控制、熔断降级、系统负载保护等多个维度来保护服务的稳定性。
2、使用的核心场景(秒杀)
3、sentinel核心部分:
1)核心库(Java 客户端):能够运行于所有 Java 运行时环境,同时对Dubbo /Spring Cloud 等框架也有较好的支持。
2)控制台(Dashboard):基于 Spring Boot 开发,打包后可以直接运行。
4、限流的目的防止恶意请求流量、恶意攻击,或者防止流量超过系统峰值。
5、Sentinel是如何对请求进行限流的?
主要是基于sentinel依赖提供的拦截器
6、限流常见的算法?
计数器、令牌桶、漏斗算法,滑动窗口算法
Sentinel 默认的限流算法:滑动窗口算法
7、Sentinel流控规则分析
阈值类型
QPS(Queries Per Second):当调用相关url对应的资源时,QPS达到单机阈值时,就会限流。
线程数:当调用相关url对应的资源时,线程数达到单机阈值时,就会限流。
8、设置限流模式
Sentinel的流控模式代表的流控方式,默认直接(快速失败)关联(高并发,有多个接口时,我们要设置接口的优先级) 链路
链路:链路模式只记录指定链路入口的流量也就是当多个服务对指定资源调用时,假如流量超出了指定阈值,则进行限流。
被调用的方法用@SentinelResource进行注解,然后分别用不同业务方法对此业务进行调用,
假如A业务设置了链路模式的限流,在B业务中是不受影响的
9、设置链路流控规则后,再频繁对限流链路进行访问,检测会出现500异常
10、处理流控模式为链路模式时,假如是sentinel 1.7.2以后版本,Sen

Sentinel 是阿里开源的流量防卫兵,提供流量控制、熔断降级、系统负载保护等功能,保障服务稳定性。核心场景包括秒杀,核心组件包含Java客户端和Dashboard。限流算法涉及计数器、令牌桶、漏斗和滑动窗口,Sentinel 默认使用滑动窗口。限流目的防止恶意流量,限流模式包括QPS和线程数。熔断降级策略包括慢调用比例、异常比例和异常数。Sentinel还支持热点参数限流、系统保护规则和授权规则,确保服务高可用。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



