写在git@osc上线1000天之逗比版

先声明:既然是逗比版本,肯定语言会在事实的基础上进行一定的夸大和调整,如有同事觉得不太爽。。请无视,@麒麟  请不要哔哔,你写的bug生代码了,下次在敢在提交记录里写修复我写的bug,看我不打屎你

2014年10月我入职,当时git组已经有了9个人了(我是第九个),上来就扔我我一本书,叫做rails从入门到精通,其实看到这本书的一瞬间我就傻逼了,看这书名就明显是个坑,现在凡是写着什么xxx天从入门到精通,xxx很容易的书基本都是坑,果不奇然,丫的rails版本是2.0多一点,ruby版本居然还是1.7。看了三天 @zoker  说你别往后面翻了,那个过期了。。。。然后。。我瞬间斯巴达了,我累个大曹,过期了丫的给我看干嘛,这坑爹呢不是。。。

其实时间这玩意吧,还真没准,如果没啥事,一眨眼几个星期就过去了,如果出点事,每一秒钟都过得和陪女人逛街似的。虽然已经过去一年了,但我仍然记得出事时的样子,大概。这应该是第一次对整个git事故的描述吧,其实这次事故很简单,起因是因为git发展比较快,我来那会已经积累了近6个T的数据(没有算备份数据,算备份数据的话应该是24个T),这么大的数据跑在虚拟机上其实是不合适的,所以迁移之前的那段时间红薯说话的声音都比较小,因为git慢到无法忍受,红薯说话没底气。。。然后。。然后。。。然后在北京搞了几台独立服务器,那会ceph不是比较火么,就顺便使用上了ceph,期望在不改变架构的前提下获得更好的性能,于是,那天周六,我们的开源中国三壮士就开始吭哧吭哧的迁移系统,周六的时候迁移完做完测试显示系统没啥问题,然后大家高高兴兴的回家找的找女朋友,睡觉的睡觉(当时我没有参与迁移,故不知道过程如何,反正第二天是一地烟头和好几个红牛的空罐子),周日的时候系统正常,用指标说话就是负载正常,储存正常,一切正常,但是到了周一。。。。我想称其为灰色周一应该是没错的,前文我们知道,数据量有近6个T,而这近……6个T的数据全部是由一个个只有几KB到几十KB的文件组成的,可想而知到底有多少个文件,然后,然后上午的时候因为大家刚开始一周的工作,推送访问量比较小,还撑住了,然而过了中午,开始有代码集中推送,然后,ceph很傲娇的罢工了。。罢工的表现就是网站不能访问,好不容易打开了发现自己的仓库空了。。于是,动弹一下子爆炸了,红薯的手机也一下子爆炸了,整个部门除了我们几个刚入职的无所事事以外,都心急火燎的(虽然我这么写大概也许可能红薯会扣我工资,但我还是这么写了,恩,红薯,你要是扣我工资,我回家种几亩地的红薯然后全做成红薯粉。。。),一直在找解决方案,最后发现,丫的不是ceph傲娇了,是linux 的底层文件系统xfs傲娇了,不过还好数据可以被恢复,于是我们的开源中国两壮士又吭哧吭哧的开干了,两天一夜,总算是完美的解决了这个问题,最后的结果是服务差不多停摆一整天,用户的代码一行都没丢!


这件事应该就是2014年git@osc遇上的最大的事了,然后接下来就是新版本,新界面的上线,犹记得刚上线那会手忙脚乱的,上线完了才发现没写新闻通告,第二天又补充一篇新闻。。。。实际上,如果有印象的话那几天是发现了好多问题的,比如头像在某些页面会搅乱样式,某个按钮怎么看怎么别扭。。好吧,其实我想说,上线前一个星期,都是我在测试。。。。还有,其实那几天验证码是处于撒花状态的,直到某一天我们偶然发现验证码居然不管怎么输都是对的才发现验证码处于偷懒状态,当然,git的好处体现出来了,那就是可以追踪到谁修改的,然后。。。。现在某人成了我们git组的一个梗 一遇上一个老bug,那么一定会说,这一定是xxx干的,我们都没动过这块。。


当然,在这期间osc更新了自己的总部,还拍了一张让我至今也无法忘怀的照片,直到昨天年会还被人笑的照片,其实吧,照片挺正常的,但加上万恶的马赛克之后。。。恩,你们懂的,新总部,同事全聚在一起,交流变多了,于是,经常可以听到如下对话: 你拉了吗、我没拉呢,你都没推、我推了,你赶紧拉啊、我刚刚推了,大家都拉一下啊,配上桌子边上雪白的卷纸,请大家自行脑补一下那画面的美感。。。

接下来就是过年了,过完年,git慢慢的从之前的故障中缓过气来,我们也开始小步快跑,每天都有更新,每天都有优化,有页面的,有后端存储的,各种各样的优化,git的开发组一直在努力,或许有些人会发现,在git上提一个issue,最快有回复是几十秒,那是因为我们时时刻刻都有人盯着,一旦有人提了issue说有什么问题,我们都会努力去解决,暂时无法解决的也会给个准信。


然后,就是paas平台的接入了,到目前为止,git已经接入了各种第三方服务,包括paas,包括代码分析,git变得越来越开放,越来越成熟,用户体验越来越好,到现在为止,骂git的人已经大大减少了,以前红薯每天都能接到几个投诉,现在。。。有吗?我听不到,所以。。红薯,没有吧?! 还有?哦。。我没看到


接下来就是我从学校归来后遇上ddos攻击了,那几天git就像被人强行弄出了大姨妈一样,推送慢,打开慢,还死机。。。其实吧。。这事还真不怪我们,因为git所在的机房总出口带宽太小,运行商直接把我们的ip给封了。。。所有的访问包括攻击也好,正常访问也好,压根就没到我们服务器。。。所以,那几天服务器君真的很闲,闲到每天的访问量只有几个,闲到后台监控都打不开。。。对于这件事,我可以报粗口么??不能啊,那没评价了!


应付完攻击之后,git上线了一系列的防御措施,包括高防IP,云盾什么的,每天的支出都是好大一笔钱,其实这些本来不用出的,用来买服务器都好。。。。再次诅咒发起攻击的那货没有小JJ。。。。然后。。其实没有然后,因为到今天,攻击都没怎么挺,隔三擦五的给你来一发,就像那啥一样,似乎攻击git@osc是一件很难好玩的事情一样。。。所以,我们又计划着将机子从北京迁移到出口带宽更大的无锡,这样,只要攻击的流量不超过机房的出口带宽,git就不会因为被运营商强行封锁ip而停止服务,这回,从开源中国仨壮士变成了五壮士,我们吭哧吭哧的搞了一个通宵,完美的切换到了无锡。。实际上,这次切换我们采用的新老服务并存的搞法,通过阿里云的弹性网络来动态切换的,实际上北京和无锡的服务都是同时运行着,只不过通过弹性网络切换到无锡,所以,这次切换没闹啥子幺蛾子,当然,代价就是参与迁移的基本都是忙到第二天中午才回家,光是红牛就干掉了一整箱。。。。哦对了,顺便替阿里云打个广告,你丫的连我们测试脚本跑的测试都干掉了,能认准人在干成不。。。。。


其实到这里已经是2016年1月了,回顾一下我入职到现在,git从跌跌撞撞到昂首踏步,作为参与者,我也是哔了狗了。。红薯居然还不给我涨工资。。。


好吧,请无视上面那句话。。。接下来,git还会有分布式上线,组织功能上线,版本功能上线,第三方上线,oauthAPI上线。。。。总而言之,就是一大波功能即将到来,git@osc已经上线1000天了,接下来还会有2000天,3000天4000天。。。。


也许有一天,会有这样一个场景:爷爷:等git@osc下线那天一定要烧点纸钱告诉我。。。。诺干年后,某位老人望着前面的一大片墓地,说:祖先们,后辈不孝,git@osc还活着啊。。。


你可能感兴趣的:(写在git@osc上线1000天之逗比版)