如何搞垮Twitter
如何搞垮 Twitter?
Twitter 的网站正在以新颖的方式出现故障——虽然该公司设法在几个小时内从最近的故障中恢复过来,但故障背后的故事表明在不久的将来可能会出现类似的问题。
周一早上,Twitter 用户登录后发现了一大堆相互关联的问题。单击链接将不再打开它们;相反,用户会看到一条神秘的错误消息,报告“您当前的 API 计划不包括对此端点的访问权限。” 图片也停止加载。其他用户报告说他们无法访问 Twitter 拥有的专业用户客户端 TweetDeck。
混乱接管了时间线,因为用户在推特上大声疾呼有关中断的消息——通常用没有人能看到的图片来说明他们的观点,因为他们不会加载。
“如果你现在做出改变,一切都会崩溃”在一条推文中,该公司对正在发生的事情提供了最模糊的解释。
“Twitter 的某些部分现在可能无法按预期工作,”该公司的支持帐户发推文说。“我们进行了内部更改,但产生了一些意想不到的后果。”
Platformer现在可以确认,有问题的更改是关闭对 Twitter API 的免费访问的项目的一部分。2 月 1 日,该公司宣布将不再支持免费访问其 API,这实际上结束了第三方客户端的存在,并极大地限制了外部研究人员研究网络的能力。该公司一直在构建一个新的付费 API 供开发人员使用。
但我们被告知,埃隆·马斯克 (Elon Musk) 对公司的削减幅度有多大,只有一名现场可靠性工程师参与了该项目。据一名现任员工称,周一,该工程师进行了一次“错误的配置更改”,“基本上破坏了 Twitter API”。
这一变化在公司内部产生了连锁反应,导致 Twitter 的许多内部工具以及面向公众的 API 都瘫痪了。在 Slack 上,工程师们在争先恐后地解决问题时,用“废话”和“Twitter 宕机了——整个事情”的变体来回应。
我们被告知,马斯克非常愤怒。
“API 的一个小改动会产生巨大的影响,”马斯克当天晚些时候在推特上写道,此前 Twitter 投资者马克安德森发布了一张截图,显示该公司的 API 故障正在该网站上流行。“代码堆栈无缘无故地非常脆弱。最终将需要完全重写。”
不间断的裁员使公司只有不到 550 名全职工程师一些现任员工对这种观点表示同情,这种观点至少将 Twitter 的问题部分归咎于马斯克拥有该公司之前的技术故障。失败的鲸鱼成为旧 Twitter 的标志是有原因的。
“Twitter 1.0 带来了如此多的技术债务,如果你现在做出改变,一切都会崩溃,”一位现任员工说。
不过,当马斯克接管公司时,他承诺会大幅提高网站的速度和稳定性。他的同事对现有员工的技术能力进行了筛选,最终裁掉了数千名被认为“技术”不够在马斯克的领导下取得成功的员工。
但我们被告知,不间断的裁员使公司只有不到 550 名全职工程师。正如前员工从一开始就预测的那样,损失使 Twitter 越来越容易受到灾难性中断的影响。
周一的错误配置更改至少是 Twitter 今年第六次引人注目的服务中断:
1 月 23 日,Android 用户暂时无法加载新推文或发布新推文。
2 月 8 日,一条错误消息告诉用户他们“超过了发送推文的每日限制”,阻止他们发布。
2 月 15 日,推文停止加载。
2月18日,时间线断裂,回复消失。
3 月 1 日,时间线停止工作。
“这种类型的中断变得如此频繁,以至于我认为我们都对它麻木了,”一位现任员工说。
这些只是服务中断。其他问题,例如导致马斯克的推文在时间轴上比任何其他用户的推文更显眼的问题,也扰乱了用户群。
在许多方面,周一的停电代表了马斯克迄今为止在公司的领导力达到顶峰。为了一心一意地削减 440 亿美元的收购成本,他一直在裁员并减少 Twitter 的免费服务。
这为单个工程师负责一个重大项目铺平了道路——一个与用户和员工都依赖的几个关键互连系统相关联的项目。
由于手头没有多少知识渊博的工作人员来恢复服务,Twitter 花了一上午的时间才解决了这个问题。“当你解雇公司 90% 的员工时,就会发生这种情况,”另一位现任员工说。
然而,在 Twitter 的总部内部,气氛几乎是轻松的。“我们一直在笑,”另一位现任员工说。