【Spring Cloud Alibaba】Sentinel(一)

【Spring Cloud Alibaba】Sentinel(一)

  • [1. 简介](#1. 简介)
  • [2. 服务雪崩](#2. 服务雪崩)

1. 简介

Sentinel 是阿里巴巴开源的分布式系统的流量防护组件,主要用来做流量控制、熔断降级、系统保护 。它的定位类似于 Hystrix ,但更侧重在 流量治理 上。目前在微服务、服务网关、大型分布式系统中广泛使用,Spring Cloud Alibaba 体系中也自带集成。

=======================================================

🌟 Sentinel 的核心功能

1.流量控制(限流)

  • 可以针对 QPS(每秒请求数)、并发线程数、调用关系等维度设置阈值。
  • 支持 匀速排队、预热模式、冷启动模式 等策略,避免突发流量冲击。

2.熔断降级

  • 根据 异常比例、异常数、响应时间 等指标,对调用链路进行熔断。
  • 熔断后会在一段时间内快速失败,避免故障蔓延。

3.系统保护

  • 基于 系统整体负载(如 CPU 使用率、RT、线程数) 进行自适应保护。
  • 防止因为单个服务请求过多而导致整个系统雪崩。

4.实时监控

  • 提供 控制台,可以实时查看各个服务的限流、熔断、请求量、响应时间等信息。

====================================================

📚 Sentinel 的工作原理

核心是 对请求进行统计与规则判断:

  1. 请求进入时,Sentinel 先判断是否超出阈值。
  2. 如果超出,直接拦截(触发限流/熔断)。
  3. 如果没有超出,就继续放行。

规则可以在 代码中硬编码,也可以通过 动态配置(Nacos、Apollo、ZooKeeper 等) 来下发。

=====================================================

✅ Sentinel 的优势

  • 轻量级,不依赖重量级框架,接入成本低。
  • 功能全面:限流 + 熔断 + 系统保护 + 实时监控。
  • 动态规则:可结合配置中心(Nacos、Apollo 等)。
  • 生态完善:已集成 Spring Cloud、Dubbo、gRPC、Spring WebFlux 等主流框架。

2. 服务雪崩

比如一个电商系统是微服务系统,它包含了秒杀商品、商品详情、购物车、积分等服务,且服务之间也是相互调用的。

如果其中一个服务挂了,比如说秒杀开始了,积分服务因为性能问题,挂了。

后续的话,因为积分服务挂掉了,后续的用户请求到积分的时候,所有的请求都会积压到这里,得不到响应。会重复请求导致服务压力更大。然后后面的请求又会积压到商品服务,慢慢的商品服务也挂掉了,后面整条链路的服务都会挂掉。这就是服务雪崩。

补充:服务挂掉的原因,如激增流量、不稳定服务依赖等等。

相关推荐
952367 小时前
Sentinel
java·后端·spring·sentinel·springcloud
渣渣盟1 天前
当 Redis 集群发生主从切换(Failover)时,Flink 任务会崩溃吗?如何利用 Sentinel 实现高可用?
redis·flink·sentinel
xiaoxiangsiyan7 天前
LNMP + Redis Sentinel 高可用架构部署手册(续)
运维·网络·数据库·redis·缓存·架构·sentinel
敲代码的嘎仔7 天前
从零搭建微服务:Spring Cloud Alibaba 全家桶踩坑实录(Nacos + OpenFeign + Gateway + Sentinel)
java·spring boot·spring·spring cloud·微服务·gateway·sentinel
小罗水10 天前
第14章 Sentinel 限流与 AI 降级
人工智能·sentinel
he___H10 天前
Sentinel使用实操
java·开发语言·sentinel
随风M记忆s11 天前
GEE&Python-demo:利用Sentinel-监测北京奥林匹克森林公园年NDVI变化(附Python版)
开发语言·python·sentinel
X-⃢_⃢-X11 天前
六、Sentinel
网络·数据库·sentinel
YOU OU13 天前
Redis哨兵 & 集群
数据库·redis·sentinel
遥感知识服务25 天前
Sentinel-1 + DEM + FwDET + 随机森林:从快速水深初估到多因子误差修正
算法·随机森林·sentinel