标准答案
- 代码审查适合发现业务边界遗漏、错误处理不完整、权限判断和可维护性问题。
- 静态检查适合发现语法、类型、常见安全模式、格式和部分资源泄漏风险。
- 依赖升级治理适合发现已知漏洞、兼容性变化和供应链来源问题,并要求升级有测试与回滚依据。
- 运行时观测用于发现延迟、容量、真实异常分布、下游故障、数据倾斜和配置变化等静态阶段无法完全模拟的问题。
题目解析
上线前控制和运行时观测不是替代关系。前者降低把明显错误送进生产的概率,后者让团队在未知负载和依赖变化下仍能看见真实状态。
如果一个问题只能靠“人工经验”发现,通常应考虑把它沉淀为规则、测试、指标或告警,让下一次更早暴露。
常见误区
- 认为 CI 全绿就不需要发布后的指标观察。
- 把代码审查当作安全扫描的替代品,或反过来只依赖自动规则。
- 升级依赖时只改版本号,不读变更说明、不做兼容性验证。