线上故障标准处理流程【完整版面试背诵生产落地】核心宗旨先止血、再恢复、后复盘。线上故障第一优先级是恢复业务不是查根因、不是改代码。完整闭环发现 → 定级 → 通报 → 止血恢复 → 根因定位 → 修复上线 → 数据补全 → 复盘整改一、故障发现被动主动两类发现渠道被动发现用户反馈、客服上报、业务侧报错、接口超时、页面异常主动发现监控告警CPU/GC/接口成功率/报错率、链路追踪告警、日志异常告警、拨测告警按影响用户数、业务范围、持续时间定级统一处理优先级P0 特级故障核心业务全挂、全站不可用、大量用户受损、资损严重P1 严重故障核心业务降级、部分功能不可用、大量用户受影响P2 一般故障非核心功能异常、少量用户影响主流程正常P3 轻微故障日志报错、偶发异常无用户感知定级决定响应速度、是否拉紧急群、是否升级领导、是否停迭代。三、故障通报同步信息避免多头排查故障初期信息同步避免多人重复排查、混乱无序拉紧急故障群研发、测试、运维、产品、客服同步故障现象、开始时间、影响范围、当前处理人禁止沉默排查任何进展、卡点、猜测必须实时同步四、核心步骤先止血、后恢复重中之重面试高频线上铁律恢复业务优先不追求当场定位根因。常用止血恢复手段按优先级排序紧急降级关闭非核心功能、限流、熔断保住主流程流量切换读写分离切主、切备用集群、异地多活切换节点摘除下线故障节点、异常实例避免持续报错版本回滚最新迭代代码导致故障优先回滚上一个稳定版本最快止血重启恢复内存泄漏、死锁、线程耗尽快速重启实例兜底临时兜底方案缓存兜底、静态页兜底、默认值兜底止血标准接口成功率恢复、报错率归0、用户感知消失。五、根因定位业务恢复后开展业务恢复稳定后再深入排查真实原因避免故障复现。排查维度全覆盖应用层死锁、OOM、频繁FullGC、线程池耗尽、代码bug、空指针、循环逻辑数据库层慢SQL、索引失效、行锁等待、连接池打满、主从延迟中间件层Redis大key/热key、MQ堆积、ZK抖动、Nginx异常资源层CPU飙高、内存溢出、磁盘满、网络丢包、带宽打满变更层代码上线、配置变更、机器扩容、权限变更、依赖升级定位方法监控大盘 链路追踪 日志检索 线程栈/堆dump分析 变更记录比对。六、彻底修复 灰度上线修复代码bug、配置错误、资源瓶颈、架构缺陷禁止直接全量发布先灰度、小流量验证、观察监控验证回归功能回归、性能回归、并发回归确认无二次问题七、数据兜底 损失修复故障若导致数据异常、丢失、重复、资损核对日志、数据库、MQ消息校准脏数据补单、对账、回补数据、补偿业务状态统计资损范围、用户影响做好用户安抚八、故障复盘闭环关键面试必考故障恢复后必须复盘杜绝重复踩坑采用5Why分析法深挖根因。复盘报告核心内容故障基本信息时间、现象、定级、影响范围、持续时长故障过程发现、通报、止血、恢复、定位完整时间线直接原因表面问题如新增SQL无索引、代码死循环根本原因流程/规范/架构漏洞如上线无灰度、无SQL审核、无压测改进方案代码、流程、监控、架构四层整改责任人、整改截止时间、验收标准三类整改措施必背短期止血临时修复、配置优化、降级限流兜底中期优化代码重构、SQL优化、资源扩容、补齐监控长期规范完善上线流程、CR规范、压测规范、告警体系九、线上故障三大铁律面试绝杀句恢复大于一切先止血恢复业务再查根因绝不原地死磕排查所有故障必须复盘无复盘不结束无改进不闭环故障可预防、可兜底、可快速恢复杜绝低级重复故障十、高频面试深挖问答Q1线上故障为什么优先回滚而不是现场修复回滚是最快、最安全的止血方式能立刻恢复业务现场修复耗时久、不确定性高容易引入二次bug扩大故障影响。Q2故障处理最大的禁忌是什么沉默排查、盲目改代码、不通报、不降级、不回滚、耗时死磕根因导致故障持续扩散。Q3怎么避免同类故障重复发生通过复盘找到流程漏洞补齐监控告警、完善CR审核、上线灰度、压测覆盖、增加兜底降级策略固化规范流程。Q4偶发难复现故障怎么处理优先加详细日志、链路埋点、监控指标缩小排查范围增加兜底容错逻辑先保业务稳定等待故障复现定位根因。一句话终极背诵总结线上故障遵循先止血恢复、后定位根因、最终复盘闭环优先降级、限流、回滚、节点切换快速保业务通过监控日志定位问题修复后补齐数据损失复盘深挖根本漏洞从代码、监控、流程、架构四层优化杜绝重复故障。