创立于 2008 年 · 数字版 · 2026年6月15日

SMB IT Journal

面向小型企业的信息技术资源

中文

如果没坏,就别去修它

这话我们都听得够多了,对吧?“如果没坏,就别去修它。”人们到处用它来劝阻改进、现代化或重构。许多人都把这话挂在嘴边,而正如许多此类话语一样,表面上看似乎合情合理。但在实际应用中,它其实并非如此,或者至少并非像通常使用的那样——因为它没有被很好地理解。

这与劝人们不要把所有鸡蛋放在一个篮子里的概念非常相似,那种说法往往被套用到鸡蛋与篮子的类比并不适用、或者与现实恰恰相反的情形上。但正因为它是一句被记诵下来的话,人们便忘记了其中有一个需要站得住脚才能成立的隐喻。它可能导致糟糕透顶的决策,因为它唤起的是一种毫无根据的非理性恐惧。

同样,不去修理没坏的东西这一观念,源自这样一种理论:某样东西既然完好且功能正常,就不应该仅仅为了折腾而把它拆开、瞎摆弄。这是有道理的。但出于某种原因,这一逻辑几乎从不被应用到那些它本该适用的事物上(我甚至想不出一个这类事物的好例子),反而被套用到那些需要定期保养和维护才能正常运作的复杂设备上。

当然,如果你的鞋子没坏,就别把它撕开再试图用胶水把它粘回去。但你的业务基础设施系统与鞋子毫无相似之处。它们是具有极高复杂程度的活的系统,在一个不断变化的环境中运作。它们需要持续不断的维护、监督、更新等等才能保持健康。这很像汽车,但程度要剧烈得多。

我们希望,你永远不会听到有人告诉你,不必给汽车换机油,直到发动机卡死为止。当然不会,尽管它尚未损坏,但其要旨在于通过保养来防止它损坏。对于汽车我们知道,如果一直等到它坏了,那它就会坏得很彻底。同样,我们也不会拒绝给轮胎打气,非要等到瘪掉的轮胎从轮毂上扯下来才肯动手。这根本说不通。

告诉某人不要维护系统、直到为时已晚,无异于告诉他们去把它弄坏。一辆保养得当的汽车也许能行驶数十万英里,甚至上百万英里。而一辆没有机油的汽车能开过城镇都算走运。与其每隔几天就买一台新发动机,不如悉心照料你已有的这一台,这样你或许一辈子都不会毁掉一台发动机。

你的业务基础设施也是同样的道理。代码会老化,系统会磨损,新技术会涌现,新的需求会出现,网络会与外部世界交互,会需要新的功能,漏洞和脆弱之处会被识别并修复,更新会发布,新的攻击会被开发出来,等等。即便从不创造任何新功能,系统也需要被勤勉地管理和维护,以确保安全可靠地运行 – 就像汽车,但要复杂上千倍。

就 IT 系统而言,“坏了”意味着不必要地暴露于黑客攻击、数据失窃、数据丢失、停机和低效率之下。在现实世界中,我们应该在需要维护的那一刻起就把系统视为已经坏了。如果系统只是得到了妥善的维护,今天又有多少勒索软件本不会构成威胁?作为 IT 人,我们需要挺身而出,讲清楚:未经维护的系统已经是坏的,只不过灾难尚未降临罢了。

如果我们在 IT 中奉行“如果没坏,就别去修它”这一信条,那我们就会一直等到数据被窃取*之后*才去修补漏洞,或者等到数据无法恢复之后才去看我们是否有可用的备份。这当然毫无道理。但当人们告诉你不要修系统、直到它们坏掉时,他们所建议的往往正是这个——他们是在告诉你任其损坏!要反驳,不要接受那种建议。要讲清楚,良好的 IT 维护其目的在于尽可能避免系统损坏。是要避免灾难,而不是招致灾难。

广告

SMB IT Journal — the IT resource for small business