最近这几天,有关支付宝和携程的故障问题炒的很热,什么“光线挖断”、“物理删除”、“员工报复”等各种段子甚嚣尘上。拿携程来说,按照之前财报所说,每小时宕机的损失高达百万美元,从中午到半夜,故障时间大约 7-8 个小时,损失挺大的。
关于故障的根源,我也从一些渠道得到了权威的答案,应该是员工犯了比较低级的错误,不是有意为之的,但是导致的结果很严重。有关这次故障的技术性讨论已经有很多了,我想从其他角度来说下看法。
- 技术不是万能的。最近十年,随着 IT 技术特别是互联网的发展,咱们的生活发生了很大的改变。我们对技术的依赖也越来越大,什么“技术驱动业务”、“技术改变世界”,这些说法都没啥大问题,但是如果把技术看成决定业务的一切,那就太偏颇了。以运维领域为例,虽然这几年有关运维的工具、理念、技术不断发展,但是依然存在各种陷阱和填不完的坑。这些坑一方面是因为技术的时代局限性,另一方面,是因为技术并不能从根本上取代运维工程师。运维是一个极其庞杂的领域,技术越发展,其含义越加丰富,技术可以帮助运维工程师减少犯错的几率和重复性劳动,但是无法告诉我们如何做好运维,只有人才能做出判断和优化。
- 管理和流程比人和技术更重要。除了技术,人更靠不住,经常犯这样那样的错误,特别是在执行一些日常性的、非决策判断性的工作时。这时候,公司的内部管理机制和流程就显得非常重要,小到一个系统补丁升级的操作流程,大到产品重构的管理,都需要明确的步骤和责任人。在互联网快速发展的中国,人的因素往往在公司中占据了主导地位。这次我去深圳和广州考察,正好有两家公司,形成了比较鲜明的对比,一家公司采用了国际标准的项目管理流程,做任何事情都有一个流程模板,把关键要素填上去,就可以形成一个标准流程,而且不依赖于某个人;另外一家公司的负责人则告诉我,他们现在非常害怕某个关键岗位的工程师离职,因为这意味着某项工作可能就会搁浅。这两种方式各有利弊,我们很难做出 01 选择,但是从运维的角度来说,我更倾向于采用完善标准的流程,避免人为的失误。另外卖个关子,近期 InfoQ 会牵头做一件运维领域的大事件,对整个运维领域都有好处,6 月份就会有结果。
- 运维非常复杂,出错的地方却往往是在最简单的地方。这可能是技术人包括我自己的一个共性,在研究一件事情时,一开始就深入细节,往最复杂最有挑战的地方研究,对于显而易见的问题和流程,一方面觉得没啥意思,体现不出自己的能力来,另一方面觉得太简单,一般不会出问题。按照 28 原则,80% 的工作和流程都是相对简单的,如果这些任务没有仔细研究和做好,那么犯错的概率自然就大了。
- 避免事后诸葛亮。我看到携程故障之后,好多评论都在讲携程甚至是中国互联网企业发展太快,一直在裸奔,现在有报应了吧等等。我觉得说的有一点道理,但是不要忘了,“快速发展”是所有互联网企业的共性,它们必须这样做,只能边做边优化。从事后分析,我们可以说携程做的这不好那不好,但是我想提醒大家,携程的几千名 IT 工程师也不乏精英,这次的故障不会是简单的流程或者管理问题,而是有着深刻的历史背景和发展原因,我们没有机会深入了解,但是可以理解。如果携程按照网友们的建议事无巨细的研发和运维模式,也许在竞争激烈的中国,早没有携程这个名字了。
读者反馈
上篇文章《像外行一样思考,像专家一样实践》发布以后,有不少读者留言反馈,我挑选了两条很赞的文字,整理如下:
- 张卫滨:也是我最近在想的问题。小时候特别喜欢听单田芳的评书,老先生经常说一句话:凡事绕不过一个理字。也就是凡事都要讲道理讲常理,所以学习一个比较难的东西,真正理解后会有一种恍然大悟的感觉,觉得一切都在情理之中。学习做事都是一个渐进积累的过程,过程中积累的经验和知识,对于后续的学习做事可以作为基础,有了积累之后再学其他东西都会快很多,但有时候却又会走入经验主义的误区,做得东西说的话都不那么符合常理了,所以要经常跳出来看看自己,看看自己做的事情。
- 梁杰:其实对应的就是我们熟悉的看山看水问题。入门阶段是看山是山,继续深入就是看山不是山,再往后就是看山还是山,也就是“像外行一样思考”。虽然还是山,却是解构了的、每个细节都被研究过的山。怎么做到这一点?多看书多交流,从多个角度去看山,培养一种全局的视野。
作者的微信公众号“技术风向标”,关注 IT 趋势,承载前沿、深入、有温度的内容。感兴趣的读者可以搜索 ID:jishuqushi,或者扫描下方二维码加关注。
评论