当前位置:网站首页>10年稳定性保障经验总结,故障复盘要回答哪三大关键问题?|TakinTalks大咖分享
10年稳定性保障经验总结,故障复盘要回答哪三大关键问题?|TakinTalks大咖分享
2022-08-01 12:45:00 【InfoQ】
- 怎么有效降低故障的影响?
- 事故处理的流程和原则有哪些?
- 相关管理制度怎么设置比较合理?
- 事故复盘不是给人定责的,要有系统思维将优化项实际落地才能推动系统优化;
- 事故报告的重点应该是事故提升项,监控、定位、根因、架构四个部分都必须涉及;
- 事故报告的价值不仅仅是记录复盘故障,集中管理起来是很好的培训资料,能避免新人入职后走弯路;
- 架构师review是整个事故报告价值最大化重要的一部分,可以横向帮助企业研发团队相互借鉴避坑。

- 怎么有效降低故障的影响?
- 事故处理的流程和原则有哪些?
- 相关管理制度怎么设置比较合理?
一、怎么有效降低故障的影响?
1、确定高可用目标,然后拆分它

2、从不同角度去想,具体能做些什么
2.1 增大MTBF
- 首先是开发过程的质量控制,这个很重要;
- 其次是压测规范,因为很多不可用都来自压力过大,压力过大导致系统直接爆了,所以压测需要规范起来;
- 最后是上线流程,很多故障都发生在上线的瞬间,因为上线就意味着变更,变更就是事故的一个常见来源,明确上线前如何进行灰度,问题怎么排查怎么回滚,这些上线流程做好了也能规避掉一些事故。
2.2 减少MTTR

1)故障发现阶段
2)故障诊断阶段
3)修复/止损阶段
- 值班制度:要求随时有一个人能够拿到电脑来操作解决问题;
- 双人互备制度:当一个模块只有一个人了解具体的逻辑,万一这个人不能及时支援就会出问题,所以在研发的时候就要考虑到这个,每个模块都起码有2个对整体理解透彻的人;
- 现场指挥制度:每次遇到大型事故现场都会非常混乱,所以这块的设计就显得很重要,也能有效缩减修复的时间。
二、事故处理的流程及原则有哪些?
1、止损
1)止损永远是第一优先级
2)在保证止损效果的同时尽可能的保留事故现场
3)止损现场要有一个决策人
4)止损现场保持沟通
5) 及时通知客服团队
2、定位
1) 止损基本完成前不要花精力在定位上
2)不要轻易中止定位
3) 定位相关信息要时时记录
4) 定位的结论可以是无法定位,但要给出后续改进意见
3、快速复盘
4、事故报告
1)事故影响
2)事故时间线
3)事故原因分析
4)事故提升项
- 监控:两个自检的方向,事故发生后你是否第一时间收到了监控告警,事故发生前有征兆,征兆的内容是否监控到了,如果这两个部分都OK那基本可以说监控部分没有问题。
- 定位:现有的定位流程是否通畅,有没有什么改进的点,比如说需要一些工具,或者说完善日志的全文检索能力、日志的格式化与可视化能力,以此来提升定位的效率。
- 根因:根因是整个事故报告里最简单的部分,什么原因导致的事故修复优化了哪些东西。额外要说的一点是一个系统必须有2层防御能力,只有这样才能放心,不用担心下一次会出现一样的问题。
- 架构:有些问题是需要通过更加宏观的变更来解决的,这部分要明确如何通过架构的变更来从根本上来消除事故的隐患。
5、架构师review
- 督促大家产出的事故报告得合格,必须信息完整、根因分析透彻合理、提升项没有问题;
- 在各个团队间进行举一反三,对类似的风险点进行排查;
- 提供一个不同团队之间高等级的架构师的交流平台,互相学习;
6、整改跟进
三、相关管理制度怎么设置比较合理?
1、不要给低等级事故设指标
2、事故报告不要追究人的责任
3、要培训鼓励大家写事故报告
4、事故报告要集中管理
四、一个小小的实践分享
五、写在最后
1、自动根因分析
2、黄灯与自动修复
3、K8s+混沌测试冲击5个9

边栏推荐
- Programmer's self-cultivation
- Software designer test center summary (interior designer personal summary)
- 浏览器存储
- 程序员的自我修养
- bpmn-process-designer基础上进行自定义样式(工具、元素、菜单)
- R language fitting ARIMA model: use the auto.arima function in the forecast package to automatically search for the best parameter combination, model order (p, d, q), set the seasonal parameter to spe
- Alibaba Cloud Official Redis Development Specification
- Qt get all files in a folder
- formatdatetime function mysql (date sub function)
- MarkDown公式指导手册
猜你喜欢

CAN通信标准帧和扩展帧介绍
![[Open class preview]: Research and application of super-resolution technology in the field of video quality enhancement](/img/fc/cd859efa69fa7b45f173de74c04858.png)
[Open class preview]: Research and application of super-resolution technology in the field of video quality enhancement

程序员如何优雅地解决线上问题?
![[Open class preview]: Research and application of super-resolution technology in the field of video image quality enhancement](/img/fc/cd859efa69fa7b45f173de74c04858.png)
[Open class preview]: Research and application of super-resolution technology in the field of video image quality enhancement

Beyond Compare 4 试用期到期

Pytest e-commerce project combat (below)

MarkDown公式指导手册

如何利用DevExpress控件绘制流程图?看完这篇文章就懂了!

关于Request复用的那点破事儿。研究明白了,给你汇报一下。

Favorites|Mechanical Engineer Interview Frequently Asked Questions
随机推荐
Dapr 与 NestJs ,实战编写一个 Pub & Sub 装饰器
Qt获取文件夹下所有文件
一文带你彻底厘清 Isito 中的证书工作机制
Aeraki Mesh Joins CNCF Cloud Native Panorama
The CAN communication standard frame and extended frame is introduced
STM32 CAN filter configuration details
[Open class preview]: Research and application of super-resolution technology in the field of video image quality enhancement
CloudCompare&PCL ICP配准(点到面)
安全又省钱,“15岁”老小区用上管道燃气
(ES6 and above and TS) Map object to array
CloudCompare & PCL ICP registration (point to face)
SCHEMA solves the puzzle
bat倒计时代码
Feign 从注册到调用原理分析
芝加哥丰田技术学院 | Leveraging Natural Supervision for Language Representation Learning and Generation(利用自然监督进行语言表示学习和生成)
关于Request复用的那点破事儿。研究明白了,给你汇报一下。
这项工作事关中小学生生命安全!五部门作出联合部署
R language ggplot2 visualization: use ggpubr package ggscatter function visualization scatterplot, use xscale wasn't entirely specified X axis measurement adjustment function, set the X coordinate for
bat countdown code
字体反爬之好租