故障防治系列新篇。前面聊过雪崩防治的舱壁模式、依赖治理的度量——都默认了一个前提:你知道自己依赖谁。这篇补上那个前提:依赖怎么变得可见。多数团队的依赖关系一半在代码里、一半在人的脑子里,出事时才临时拼图。
为什么依赖总是暗的
三个结构性原因:
暗依赖的代价在变更和故障时集中兑现:改一个配置炸三个下游、故障排查一小时有四十分钟在画依赖图。
最小可行服务目录:五个字段
不需要上重型平台,一张表就能起步。每个服务一行,五个字段:
采集方式:从「申报」到「实测」
申报的目录三天就过期。可持续的做法是自动采集:
人工申报只留一项:依赖的理由(为什么依赖它)——这个机器采不到,却是最有价值的字段,它决定了这条依赖该不该存在。
目录建完怎么用:三个场景
一个真实的反例
某次大促前压测,A 服务报容量不足要扩容——目录一查,A 被 11 个服务同步依赖,其中 3 个在大促场景根本用不到它(历史遗留调用)。真正的修复不是扩容 A,而是那 3 条依赖下线。没有目录,扩容是唯一选项;有了目录,砍依赖才是选项。
节奏建议
别搞全员大梳理(运动式梳理的目录活不过一个季度)。从一个故障域起步(比如最近出过事的那条链路),用链路追踪自动采,两周出第一版目录,只覆盖那一条链——然后在下次变更和故障里实际用它。用出甜头的目录才会被维护,被维护的目录才是活的。
(故障防治系列:服务雪崩 → 舱壁隔离 → 依赖度量 → 故障演练 → 配置漂移 → 本文:依赖显式化)
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。