Quantcast
Channel: InfoQ - 促进软件开发领域知识与创新的传播
Viewing all articles
Browse latest Browse all 1056

事故复盘:我们是怎么弄丢1400万条日志记录的

$
0
0

在这里,我们就将涉事企业姑且称为“某公司”。至于发现问题的开发人员,我们也隐去真名,称其为王二。

在本文中,我们借此机会聊聊软件开发中的人为错误,以及针对这些错误应当采取的预防措施。

从开发到生产

首先某公司部署代码库变更的基本流程总结如下:

  1. 开发人员测试变更内容(属于流程中的常识性步骤,因此不做强调)。

  2. 代码审查(仅需要一名审查员,用于审查的时间一般也不长)。

  3. 将代码 push 至预生产环境。测试预生产环境。

  4. 在 push 至生产环境前重新审查变更清单。

  5. 在 push 至生产环境过程中重新审查变更清单。

  6. 在 push 至生产环境之后重新审查变更清单。

飞行员起飞前的检查清单列表里有一句话:

测试标准实践明确指出,飞行员必须妥善记录变更清单。

毫无疑问,飞行员在起飞之前当然得对飞机进行一番全面检查,这是毋庸争论的事实。如果飞行员没有负起检查责任,或者机场工作人员坦言为了避免晚点,检查过程中省略了某些步骤,乘客怎么敢贸然登机?反正我是不敢。但不少事故记录显示,某些飞行员就是没能尽到机体检查义务,最终引发了可怕的悲剧。

某公司虽然不是航空企业,犯错的代价也不是宝贵的性命,但事故仍然严重影响到企业的业务与信誉。如果情况再严重一些,这家公司可能将彻底不复存在。


Viewing all articles
Browse latest Browse all 1056

Trending Articles