阿里大佬带你解密Sentinel

本文深入解析Sentinel,涵盖Sentinel的概念,包括Resource、Node、Context和Slot等核心概念;介绍了Sentinel的流程,如规则配置与验证;重点探讨了Sentinel的核心算法,如滑动窗口、限流算法及其应用场景。Sentinel是阿里巴巴开源的流量防护组件,对于Java程序员来说,理解和掌握Sentinel对于提升系统稳定性至关重要。
摘要由CSDN通过智能技术生成

1、Sentinel 概念

1.1、代码结构

image.png

1.2、核心概念

Resource

资源是 Sentinel 对所保护的内容的抽象,任何想保护的代码函数等都可以通过 SphU.entry 接口将其定义为一个资源,SphU.entry 接口的第一个参数描述了该资源的名称

Node

Node是sentinel中用来存储统计数据的内存结构,以树形结构和hash存储:

image.png

一个resource按照不同入口设置不同统计结点,存储context级别的统计信息;一个resource下设置统一的cluster node,存储resource粒度的统计信息;每个cluster node根据来源下挂不同origin node,存储各个来源的统计信息。

配置中不同限流模式其实最终对应的就是选择不同的node进行计算:

  • 直接模式: 选择cluster node
  • 关联模式: 选择关联resource的cluster node
  • 应用涞源: 选择origin node
  • 链路模式: 选择default node

Node 类型:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值