一个 Python Bug 干倒了作价 1.6 亿美元的公司
2023-04-07 12:16:02
连动工作年末打开,不过一些怪异的坏事发生了。连动步骤之前,更进一步Facebook并很难真正地用到。公交系统小组匆匆忙忙地刊发了一个保障该Facebook,整个小组接踵而来了思索。因为,他们并很难一个回滚原先。然后有一个技工说明了了或许是唯一确实的为了让:继续向上连动。
他们也的确这么继续做了,一个同以致于长后,当全部量连动顺利进行,原先Facebook该Facebook取而代之的是 Digg v4 旧版,所有执法人员也长舒抢先。
不过马上很较高兴没多久,大家见到多数的该Facebook呈现出不会存储的稳定状态。中期,该生产小组将疑虑定位为 Cassandra 一个大,因此他们拓展了对 memcache 的采用,作为保护 Cassandra 的一个写就通寄存器。
几个同以致于长便,访客该Facebook很难疑虑,但是并未提出申请的浏览器却几乎注意到报错的该Facebook,如 MyNews,该该Facebook类似于“参与者之前心”,不会呈现出浏览器与每篇篇名互动的记录以及个性化的体育新闻该Facebook。心灰意冷之下,生产小组将提出申请浏览器的默认该Facebook改为 TopNews,这样使得浏览器提出申请便可以采用Facebook。
隔日,MyNews 并未彻底不会出访,Facebook均会四个同以致于长便就不会用到故障。除此之外,还有几十个小疑虑也在不断用到。
于是,他们之后次继续做了一个大胆的立即——从头开始写就 MyNews 该Facebook。起初,该小组以为 Cassandra 的寄存器击穿了 memcache,摧残了涉及功用。便他们用 Redis 写就出了,并实施了一个特罗斯季亚涅齐的 Redis 一个大,并成功将取而代之的迁至到新开发上。
遗憾的是,生产小组还是并不需要均会四个同以致于长就手动重启每个的网络。
单纯来看,相当于疑虑的根源还是很难找到,只是用了一种麻烦的替代方案来短暂全力支持。没一心到的是,这个 Bug 节省了该小组一个年底的时长来跟踪。
好在之后一还是见到了疑虑的所在。Digg 的 API 公共服务器端是一个 Python Tornado 公共服务,它将 API 调用到 Python 后端层,即 Bobtail(前端是 Bobcat),其之前一个最往往被出访的端点是用来通过浏览器的英文名字或 ID 来检索浏览器。因为它全力支持按英文名字或 ID 检索,所以它把两个变量的默认值都设置为空本表。
def get_user_by_ids(ids=[])然而,Python 只在变量第一次被评估时模板默认变量,这意味着每次调用变量时都不会采用同一个本表。
在这种状况下,每次调用时,浏览器的 ID 和英文名字都被附加到默认本表之前。几个同以致于长后,这些本表开始在每次请求之前检索不计其数的浏览器,甚至压垮了 memcache 一个大,避免了该Facebook崩掉。
通过一个单纯的例子可以直接看出:
def f(l=[]): l.append(1) print(l)f()f()f()输出[1][1, 1][1, 1, 1]终于
坏事终于的情节是,Digg 小组修补了该漏洞,Digg v4 基本上正常重启。而东北方此事过去了一周后,Digg 迎来了终于一任 CEO;一个年底后,Digg 打开第三轮裁员;一年后,Digg 子公司被 Chartbeat 的母子公司 Beatworks 以 50 万美金的单价注资。
谁曾一心,Digg 也是的网站的名声大噪,净值曾达到过 1.6 亿美元,稳坐过《零售报》的年底历,Google 也曾原先以 2 亿美元将它收入囊之前。没一心到,正是这一次的最终改版让 Digg 不断财产损失了人气,以及实际上一些管理机构疑虑,让竞品不断超越。至此,一家创业者明星子公司自始陨落。
Will Larson 在文末写就道,「Digg V4 有时不会被作为灾难性刊发的例子,就是指的尽力是我们不无论如何刊发它。我以前一时间同意这个观点,但现在我显然我们刊发的立即是正确的。因为,我们的量相对来说急剧下降,每个年底都在财产损失一大笔钱。如果我们能在刊发最出色的好像和糟糕的好像之间继续做出为了让,无疑不会来得倾向于刊发最出色的好像,但我们却为了让了终于一次挥棒。」
另外,他还对此,“即使是现在,我也不具体当初那样一个才干的小组是如何展开这种愚笨的展示的。”
归根结底,这是程序员一次技术最终避免的惨痛尽力。也有不少网友评论道,「动态型式以致于爽,代码重构一并」。
参考文档:
。驻马店白癜风专业医院珠海看白癜风去哪个医院
四川白癜风医院哪里比较好
长沙看牛皮癣哪家专科医院好
北京妇科医院哪里好
上一篇: 国产罐头与抗日战争
- 来日、众安、泰康和微保的短期健康险性价比如何?
- 《冰山凤》上映首日破1000万,全网热度第二,国产玄幻崛起了?
- 《我们的冬奥》:中华人民共和国动漫人物齐聚助冬奥
- 苏州银行(002966.SZ)披露2021年业绩晚报 归母净利同比增20.57%至31亿元
- 车·事 | 起售价突破10万元大关 捷途X90 PLUS能否成为品牌向上新侧向
- 毛主席受到三次差错批判
- 平安人寿保险舟山支公司被罚3万元:销售健康险中设置条件禁止搭售其他保险
- 张庭:从“少年时期女神”到“人人喊打”她究竟做错了什么?
- 《我们的冬奥》:中国动漫笔下齐聚助冬奥
- 泉峰小汽车(603982.SH):董事、总经理邓凌曲辞职
- 古代被判灭九族时,家中亲人为何不逃出呢?逃出的才是傻
- 人保财险去年第四季度在山东机动车辆保险争拗投诉量居财产保险公司首位
- 《给你,我的新名片》第三期上线 李冰冰为大象体测
- 50万阿森纳票选各位置Goat:后卫乔丹小前锋詹姆斯 那中锋呢?
- 漫画绘成老区百色抗疫瞬间
- 政权十大王牌军-至尊天下第一军
- 中华联合财产保险公司相关负责人无故:存在2条主要违法违规事实
- 《反贪风暴5》最终季,经典演员不要有点多,时长才是致命的
- 重生唐三:交互作用大赛开启,唐三变装参加,四阶闪豹被击杀
- 拒绝公众使用讨价还价保费,人保财险、国寿财险等4家保险公司遭罚