写点什么

系统排障,有时就像一部名侦探柯南推理剧

  • 2020-04-17
  • 本文字数:1725 字

    阅读完需:约 6 分钟

系统排障,有时就像一部名侦探柯南推理剧

最近天气越来越冷,每天夜跑的地点也被迫进入了室内,与室外跑步相比,我更喜欢在室内跑步机上跑步,其中最重要的原因是能在跑步的同时利用一部连续剧缓解跑步中所产生的枯燥感。


每次跑步看一集《名侦探柯南》,成为了我每天非常期待的轻松时刻。


虽然我并不是侦探小说迷,但推理这玩意对我有一种吸引力,让我感觉这玩意除了靠经验之外,还要那么些套路。


那么,柯南破案的套路有哪些? 其实,只是一个标准流程罢了。


看过柯南的人都知道,柯南破案奇是说有很多套路的,每一个案件几乎都是按照这个流程走下来的,不信?先来看看一张流程图:



1、发生案情(开场的惊声尖叫)


尖叫才是案件的开端,柯南遇到的很多案件中,都是目击者的尖叫吸引了柯南的注意。


2、到达现场(柯南总是第一个冲到案发现场)


尖叫完以后,不管离现场有多远,柯南和毛利小五郎总会第一时间到达。


3、发现线索 / 怀疑对象(犯人总能露出蛛丝马迹)


很多凶手会作为自己不在场证明的掩饰,然而柯南总能察觉到这些安排的蛛丝马迹。


4、快速纠偏(似凶悍的人往往不是凶手)


很多案件中会出现一些长相很凶悍、很丑陋,或者脾气暴躁的嫌疑人,但往往大家都还在怀疑他们的时候,他们就被真正的凶手提前 KO 了,最后事实证明,他们都是无辜的。


5、关键提示(柯南陷入困惑时会出现关键提示)


当遇到困惑的线索时,柯南总是会在现场周围发现某些提示,就算是不相关的一件小事都会开启柯南无限大的脑洞,之后顺利的整理好案件的案发过程等重要元素。


6、寻找证据 / 犯人认罪(凶手被指认后从来都不认罪)


每次柯南说完整个案件过程与起因后,直接指认凶手,每次凶手都会狡辩,而且会问 “这都是你的推理啊,你有证据吗?” 然后,柯南把早准备好的证据,放到凶手面前,他才被迫认罪。


一场推理,一场精彩的推理,源自于侦探观察力的核心三要素:


有明确的观察目的与观察意识 —— 亦即知道要对什么进行观察及应从哪些方面去观察一个人;


有较丰富的社会阅历并掌握相关的背景知识 —— 只有对要观察的对象领域有一定了解,才有可能从旁人看起来平常的地方看出不平常之处;


平时多实践 —— 养成随时随地对身边人员的体貌特征、身份背景与当前意图进行观察和判断的习惯;


在系统排障时,如何上演一场精彩的推理剧呢?这似乎是每个技术团队的谜题。


其实,系统排障的过程往往比案件推理更为艰辛,而且往往最终没有真相。


我们先按照相同的流程走一遍看看:



1、发生故障


如果监控告警不完善,“尖叫” 通常来自于业务方,对于技术小伙伴来说,这种 “尖叫” 比看到尸体还让人心惊胆战。


2、获取信息


尖叫完以后,不管是远程还是在机房,获取应用日志、Zabbix 等信息是必然的。


3、排查故障


对于快速发展的系统而言,日志打的 “脏、乱、差” 是必然的,所以不用 “凶手” 掩饰,能直接在日志中看出问题的,一般都不需要排障,直接消障就得了。


4、经验推测


无论你是老司机,还是新手,如果无法直接消除故障,一般会利用经验去推断,但这种推断都比较粗暴,没有任何数据给与支持。


5、推测疑似点 / 证明推测


在排障的过程中,最尴尬的场面应该是这种故障现象曾经在测试环节早已经历过九九八十一难的考验,可当下的你却无法拿出丝毫有效证据为他开脱罪责。


6、故障排除


很多时候,虽然故障已被化解,但却无法给出真相,因为化解的方式可能是一次重启,可能是更换了服务器,甚至有可能紧急发布了补丁。可真正的元凶,并未浮出水面。


如何提升系统排障的能力?


其实,对于许多业务快速发展的互联网企业来说,许多系统的故障想要快速排除基本是不太可能的。


在我看来,系统排障是种能力,就像侦探的观察力一样,可以通过适当的方法加以提升:


重视监控功能迭代 —— 知道要对什么进行监控,并将自动化监控功能与业务功能一样做到系统中去,而不是在意识上依赖运维人肉解决;


多交流,勤分享 —— 向其他企业学习关于故障或异常场景的经验,并将排障过程加以分享与操练;


平时多实践 —— 持续进行 “随机破坏性故障演练” 与 “产线性能测试”,大部分故障或异常场景,都能在凶手未到来之前进行暴露;


导致系统故障的原因,就像柯南常说的那句话 “真相永远只有一个!”。可是那个真相,等着你去挖掘与发现。


本文转载自头哥侃码公众号。


原文链接:https://mp.weixin.qq.com/s/fjEcBk2-n6s0wFr_ay_8lA


2020-04-17 15:07900

评论

发布
暂无评论
发现更多内容

Android初级开发是如何一步步成为高级开发,含答案解析

android 程序员 移动开发

Android多态实现原理,android开发艺术探索pdf百度网盘

android 程序员 移动开发

Android基础入门教程,享学课堂Android架构师vip

android 程序员 移动开发

Android已死,享学课堂

android 程序员 移动开发

Android学习笔记在互联网上火了,系列教学

android 程序员 移动开发

Android原生开发如何深入进阶,解析底层原理

android 程序员 移动开发

android双击事件响应,动脑学院vip视频破解

android 程序员 移动开发

Android外包是如何转正华为的,音视频开发面试

android 程序员 移动开发

Android学习路线!扔物线朱凯android视频

android 程序员 移动开发

Android实习面试经验汇总,温故而知新

android 程序员 移动开发

Android之内存泄漏调试学习与总结,面试总结

android 程序员 移动开发

Python代码阅读(第45篇):柯里化

Felix

Python 编程 Code Programing 阅读代码

云计算服务包括哪三种服务?怎么定义?

行云管家

云计算 网络安全 云资源 云管理

Android岗面试12家大厂成功跳槽,这操作真香

android 程序员 移动开发

Android工程师最容易遇到4个瓶颈是什么,安卓开发入门教程

android 程序员 移动开发

Android工程师跳槽经验分享,资深大牛带你了解源码

android 程序员 移动开发

Android免打包多渠道统计如何实现,面试突击版

android 程序员 移动开发

Android工作经验6年,动脑学院vip课程分享

android 程序员 移动开发

Android外包是如何转正网易的,Android高级工程师面试实战

android 程序员 移动开发

Android岗,享学课堂架构师vip

android 程序员 移动开发

Android事件体系全面总结+实践分析,爆火的Android面试题

android 程序员 移动开发

云管平台的作用以及应用行业简单介绍

行云管家

云计算 云服务 云平台 混合云 云管平台

Android体系化进阶学习图谱,扔物线五期

android 程序员 移动开发

Android大厂面试真题解析大全,10年Android开发经验

android 程序员 移动开发

Android大厂面试真题解析大全,flutter框架

android 程序员 移动开发

Android大厂高级面试题灵魂100问,Android经典面试

android 程序员 移动开发

web技术分享| React版本 anyRTC示例对等连接

anyRTC开发者

大前端 音视频 WebRTC React 实时通信

Android客户端Web页面通用性能优化实践,面试心得体会

android 程序员 移动开发

BAT面试Java岗经验汇总:面试重点+精选面试120题+6条面试经验!

Java 程序员 面试

Android培训那里好,享学课堂Android架构师vip

android 程序员 移动开发

Android大厂技术面试题汇总,享学课堂Android架构师

android 程序员 移动开发

系统排障,有时就像一部名侦探柯南推理剧_语言 & 开发_头哥侃码_InfoQ精选文章