【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. 服务雪崩

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

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

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

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

相关推荐
遥感知识服务4 天前
Sentinel-1 + DEM + FwDET + 随机森林:从快速水深初估到多因子误差修正
算法·随机森林·sentinel
吴声子夜歌6 天前
Redis 3.x——哨兵API
redis·sentinel
振宇i7 天前
Sentinel Dashboard 1.8.9 部署+Systemd 托管完整操作文档
sentinel·cloudalibaba
数聚天成DeepSData7 天前
企业知识库 RAG 数据准备与文档清洗:Dify、RAGFlow、扣子选型指南
开发语言·人工智能·机器学习·自然语言处理·sentinel·cocos2d
ironren7 天前
【Sentinel 熔断降级实战】从踩坑到优雅降级的完整记录
sentinel
LiaoWL12310 天前
【SpringCloud合集-04】Sentinel 流量控制与熔断降级 学习笔记
学习·spring cloud·sentinel
Wyc724091 个月前
Sentinel
sentinel
IT策士1 个月前
Redis 从入门到精通:Redis Sentinel 哨兵
数据库·redis·sentinel
一个儒雅随和的男子1 个月前
sentinel底层原理剖析以及实战优化
java·网络·sentinel
我是一颗柠檬1 个月前
【Java项目技术亮点】接口限流熔断:从Sentinel到令牌桶/漏桶,手把手教你构建高可用服务防护体系
java·数据库·sentinel