• 软件工程之美37讲——遇到线上故障,你和高手的差距在哪里?


    软件工程之美37讲——遇到线上故障,你和高手的差距在哪里?

    线上故障处理流程

    graph LR A[评估影响范围]-->B[试图重现问题] B-->C[临时方案和终极方案] C-->D[风险评估及持续优化]

    处理故障要点

    先恢复生产,再修复bug

    恢复生产并不一定需要修复 Bug,可以用一些临时性的方案,比如说回滚系统到上一个稳定的版本;重启服务看是否能恢复正常。当然在恢复之前,还要尽可能保留当时的日志、故障场景的截图、内存的 Dump(把当前内存数据保存的静态文件)等信息,用来后续查找故障原因使用。遇到线上故障,新手需要时刻牢记:恢复生产、降低损失是第一要务,修复 Bug 是其次的

    如何快速定位到 Bug

    • 重现 Bug。
    • 分析错误日志,通过错误日志,可以马上定位到错误在哪里。所以对于平时写程序,无论是客户端还是服务端,注意收集错误日志是非常重要的,可以帮助你在排查问题的时候节约不少时间。
    • 缩小问题范围。

    分析Bug产生原因

    高手对于线上故障,会仔细分析 Bug 产生的原因,从根本上解决,避免类似的故障再次发生。

    大厂都是怎么处理线上故障的?

    大厂其实是把高手解决故障的方式,变成故障处理的流程和操作手册,并且通过反复地故障演习。不断练习和强化对故障处理的流程,让系统更健壮,让新手也可以快速上手,做到高效处理线上故障。

    graph LR A[故障进行评级]-->B[恢复生产]-->C[分析故障原因]

    大厂处理线上故障处理机制有哪些值得借鉴的地方

    • 故障报警和轮值机制
    • 实战演习
    • 日志记录和分析工具
  • 相关阅读:
    匿名变量
    Vue父子组件传值与非父子传值
    TCP三次握手分析
    @media screen 响应式布局
    H5新增多媒体标签
    npm+node+vue配置一套带走
    vue+echarts全国疫情地图
    js本地时间格式化
    vue iview分页
    Vue打包后访问静态资源路径问题
  • 原文地址:https://www.cnblogs.com/15248252144dzx/p/14310519.html
Copyright © 2020-2023  润新知