Sentinel 限流降级源码分析
Sentinel 是阿里开源的流量治理组件,滑动窗口的 QPS 统计算法和令牌桶的限流实现是它的核心。本文深入源码一探究竟。 一、Sentinel 的核心概念 1.1 资源(Resource)——需要保护的代码片段 1.2 规则(Rule)——限流/熔断/降级规则 1.3 入口(Entry)——SphU.entry() 获取资源访问许可 1.4 核心架构——责任链模式(Slot Chain) 二、滑动窗口统计 2.1 固定窗口的缺陷——窗口切换时的”突刺”现象 2.2 滑动窗口算法——窗口细分 + 滑动 2.3 Sentinel 的 LeapArray ——环形...