为什么吸烟对健康有好处

一支烟,一阵戛然而止的咳嗽,以及现实在变得足够安全、可以解释之前那副粗鲁的形状。

我抽烟。

有时候,一支接一支。

它从来不会让我咳嗽。

恰恰相反:它会让我不咳。

这种句子,写在互联网上应该算违法。

但它是真的。

这不是建议。

只是有些事实在还没安全到足以被解释之前,会以一种很小、很烦人的方式为真。

我的身体有一点自身免疫式的喜剧天赋。有时候,除非我抽烟,它就一直咳。然后它停了。

我不喜欢这种安排。我不把它当智慧来展示。我呈现的是现实很无礼。

烟可以意味着毒。

烟也可以意味着:看这里,趁这场火还没变贵。

软件也是这样。

生产发布之后,一点烟对你的健康有好处。

因为烟是信息。

部署可以是绿的。Action 可以通过。镜像可以构建成功。Pod 可以滚动完成。仪表盘可以带着那种还没检查真正要紧之事的人才有的平静表情微笑。

产品仍然可能是坏的。

端点返回 200,然后撒谎。队列接受工作,却让错的那个 worker 挨饿。

绿色只是一种颜色。

健康是行为。

冒烟测试是一面镜子,不是道德讲座。

这也是 Still Mirror 背后的想法:一面镜子,不是羞辱。

镜子不评判。它让否认变得更贵。

这就是生产环境在发布后需要的东西。

问你碰过的那一部分。

如果你改了计费,就给计费做冒烟测试。如果你改了搜索,就给搜索做冒烟测试。如果你改了 callback,就给 callback 以及它背后的队列做冒烟测试。如果你改了 feature flags,不要只检查 secret。问一个新鲜运行中的进程它相信什么。

好的冒烟测试很无聊。

首页返回 200。已登录页面能加载。关键列表返回真实数据。日志里没有出现你刚刚试图防住的那个错误。

能自动化就自动化。不能,就写 runbook,手动执行。

客户不是烟雾探测器。

有些故障会藏起来。可以。现实总会藏几张牌。但很多故障,只是我们本可以在部署五分钟后就问出来的那件事。

问小问题,是一种仁慈。它们让客户不用替我们发现显而易见的东西。

所以,吸烟对健康有好处吗?

没有。

当然没有。

同时,在某一个身体里某个奇怪的角落,一支烟可以止住咳嗽。

这不会让吸烟变好。它只会让真相变得烦人。

有用的真相常常以症状抵达。以气味抵达。以一个小小的矛盾抵达。

不要崇拜它。不要忽视它。看着它。

给这次发布做冒烟测试。

问那个小问题。

趁部署在你手里还新鲜时,让生产环境来反驳你。

然后,呼吸。


评论

Boris D. Teoharov

作者

你好,我是 Boris

我不是作家,也不是哲学家。我只是一个来自保加利亚的后端工程师,靠在 Laravel 队列和上亿行索引之间讨生活。其余时间,我读一些本不该我读的医学资料,读一些半懂不懂的法国小说,也读我的小橡皮脑袋想咀嚼的别的东西。两只被救助的流浪狗让我保持诚实。