惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

IT之家
IT之家
博客园 - 聂微东
雷峰网
雷峰网
Microsoft Azure Blog
Microsoft Azure Blog
WordPress大学
WordPress大学
Hugging Face - Blog
Hugging Face - Blog
S
SegmentFault 最新的问题
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
T
Tailwind CSS Blog
博客园 - 三生石上(FineUI控件)
V
Visual Studio Blog
博客园 - 司徒正美
爱范儿
爱范儿
月光博客
月光博客
阮一峰的网络日志
阮一峰的网络日志
博客园_首页
博客园 - 【当耐特】
Jina AI
Jina AI
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
酷 壳 – CoolShell
酷 壳 – CoolShell
大猫的无限游戏
大猫的无限游戏
小众软件
小众软件
人人都是产品经理
人人都是产品经理
V
V2EX

博客园 - toong

envoy离线编译方法 Kubernetes AI Gateway Kind 归属地图 kubuntu通过flatpak安装软件 ai-gateway 安装记录 家用台式工作站软件配置 envoy DDOS HTTP/2 Bomb CVE-2026-47774 安全漏洞分析 envoy源码分析(十四)-- XDS的启动流程 P2P与FRP与websocket ros2入门(零)-- 难点与挑战 ros2入门(二)-- 基本概念 envoy源码分析(十三)-- WASM python运行虚拟化环境 大模型从0到1 envoy源码分析(十二)-- XDS/GRPC 绑定网卡中断后是否需要设置RFS linux socket reuse port 小测试 envoy源码分析(十一)--性能分析 envoy源码分析(十)--事件机制专项分析 envoy源码分析(八)--main线程专项分析 现代C++ envoy timeout 说明 观察中断的脚本 /proc/interrupts openssl查看编译时选项设置的方法 内核ipsec转发优化方法 提高ipsec多核并行能力的优化方法之一 tc qdisc 的burst如何设置 bash模拟netstat取值的脚本 linux内核对MSI网卡队列的smp_affinity亲和CPU选择 bash多并发--进程池数量控制 bash单例模式
envoy源码分析(九) -- circuit breakers
toong · 2025-12-17 · via 博客园 - toong

故名思意,就是防环。方式类似限速,超过一定值之后,增量的请求将被限制。是cluster级别的,

所以,如果有限速需求,或规格限制需求的话,天然在这个结构里做,也十分的不错。

image

如上图所示。

circuit breakers对象在ClusterInfo类中初始化。

ClusterInfo对象是Cluster对象的成员。Cluster由ClusterManagerImpl::loadCluster()函数,在clusterManager的初始化中调用,Cluster ManagerImpl::initialize()

在ResourceManagers::load() 函数中读取 xds config,进行ResourceLimit对象的进一步初始化。

如果 xds 中没有配置 circuit breakers,load()将使用其中设置的默认值。

xds中的位置:

image

 https://www.envoyproxy.io/docs/envoy/v1.32.13/api-v3/config/cluster/v3/cluster.proto#config-cluster-v3-cluster

参考资料:

https://www.envoyproxy.io/docs/envoy/v1.32.13/intro/arch_overview/upstream/circuit_breaking#arch-overview-circuit-break-cluster-maximum-connection-pools

https://www.envoyproxy.io/docs/envoy/v1.32.13/faq/load_balancing/disable_circuit_breaking#faq-disable-circuit-breaking