写点什么

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

  • 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:07666

评论

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

仅需三步学会使用低代码ThingJS与森数据DIX数据对接

ThingJS数字孪生引擎

可视化 数字孪生

APICloud 5月SDK发版说明

YonBuilder低代码开发平台

App 低代码 APICloud 可视化开发

2022 年 DevOps 路线图|Medium

观测云

如何使用物联网低代码平台进行工作表管理?

AIRIOT

低代码 物联网 低代码开发平台

Spark ShuffleManager

Geek_qsftko

大数据 spark

Java—基础容器

武师叔

6月月更

Redis stream Java API实践

FunTester

传统企业在进行信息化升级的过程中,如何做好信息化顶层设计

WorkPlus

Flutter在数字生活的发展与天翼云盘落地实践

flutter 架构 混合应用开发 移动开发 客户端

数据的软删除—什么时候需要?又如何去实现?

Geek_rze78a

6月月更

推开混合云市场大门,Lenovo xCloud的破局之道

脑极体

很流行的状态管理库 MobX 是怎么回事?

岛上码农

flutter ios 安卓开发 跨平台开发 6月月更

搭建在线帮助中心,轻松帮助客户解决问题

小炮

flutter系列之:UI layout简介

程序那些事

flutter 程序那些事 6月月更

APICloud可视化开发丨一键生成专业级源码

YonBuilder低代码开发平台

App 低代码 可视化 APICloud 移动端开发

APICloud可视化开发新手图文教程

YonBuilder低代码开发平台

App APICloud 低代码开发 移动端开发 可视化开发

ServerLess Aws Lambda攻击与横向方法研究

火线安全

云安全

【愚公系列】2022年06月 面向对象设计原则(五)-接口隔离原则

愚公搬代码

6月月更

新思科技在《 2022 年 Gartner® 应用安全测试关键能力报告》中表现优异 在五个常见用例中荣获最高分

InfoQ_434670063458

新思科技 Gartner 应用安全测试

掌握高性能计算前,我们先了解一下它的历史

华为云开发者联盟

华为云 高性能计算 处理器

一文带你了解J.U.C的FutureTask、Fork/Join框架和BlockingQueue

华为云开发者联盟

Java 开发 华为云

改变世界的开发者丨玩转“俄罗斯方块”的瑶光少年

华为云开发者联盟

人工智能 华为云 俄罗斯方块

为什么要开发分布式操作系统

LAXCUS分布式操作系统

分布式计算 分布式存储 超算 云边端协同 分布式操作

【6.3-6.10】精彩博文回顾

InfoQ写作社区官方

优质创作周报

Vue-5-模板语法-2

Python研究所

前端 6月月更

攻防演练 | 网络安全“吹哨人”:安全监控

青藤云安全

网络安全 主机安全 攻防演练

图像搜索是什么

Geek_e369a5

图像搜索 图像搜索是什么

华为云鲲鹏DevKit代码迁移实战

乌龟哥哥

6月月更

李飞飞:我更像物理学界的科学家,而不是工程师|深度学习崛起十年

OneFlow

人工智能 深度学习 李飞飞 ImageNet

第二届征文大赛开奖啦!速来领奖!

InfoQ写作社区官方

热门活动 初夏征文

首批!青藤通过信通院CWPP能力评估检验

青藤云安全

网络安全 主机安全 信通院

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