2018/12/13

MongoDB数据库的故事!



10 月 20 日,位于纽约的 MongoDB 在纳斯达克上市,当日收于 32.07 美元,比 24 美元的 IPO 价格高出 34%。MongoDB 首席财务官 Michael Gordon 放言:MongoDB 在数据库系统这个市场大有机会取代 IBM 和 Oracle!如此的霸气,底气哪里来?


大数据和云计算的风被谷歌吹起来的时候,被谷歌收购的网络广告公司 DoubleClick 的原 CEO 和 CTO 们觉得自己应该蹭上时代的列车,再次创业,然后 10gen 公司就这样在纽约诞生了。它的创始人分别是 DoubleClick 的创始人兼 CTO 德怀特 · 梅里曼(Dwight Merriman)、CEO 凯文 · 瑞安(Kevin Ryan),以及工程师埃利特 · 霍洛威兹(Eliot Horowitz)。
公司成立之初,创始人的想法和 MongoDB 这个产品毫无关系:他们想做一个云计算的服务,并用开源的东西来搭建。然而很遗憾,这几位二次创业的人在开源社区找了一圈,也没有看到一个让人满意的东西。于是,怀着构建伟大云计算服务的梦想,他们决定先把这个事情停一停,先搭一个自己满意的数据库出来。这个数据库就是后来赫赫有名的 MongoDB。
MongoDB 的名字需要解释一下。国内很多人觉得是“芒果数据库”,其实不是的。在英文里,“芒果”是 Mango,而 Mongo 是 humongous 的中间部分,在英文里是“巨大无比”的意思。所以 MongoDB 可以翻译成“巨大无比的数据库”,更优雅的叫法是“海量数据库”。
这几位创始人的梦想就是创建一个和过去关系数据库完全不一样的数据库,使之具有这样一些特点:海量数据库、数据库的模型极其灵活、适合程序员使用。
大概怀着伟大理想的人都会做出伟大的产品。MongoDB 注定是独特的,在历史上会留下浓重一笔的产品。
当 MongoDB 开发出来的时候,创始人们给它的定义是:这是一个面向集合的、模式自由的文档型数据库。听到这里,你可能觉得有点晕了,那就先普及一下数据库的基本常识吧。
在过去的 30 多年里,整个工业界的数据库被所谓的关系数据库所主导。一个不太严谨的说法是:关系数据库的基本存储单元是表。而一张表则是有行有列的数据集合,而列的定义有严格的类型。所以关系数据库是一个严格定义的数据模型,每张表里的每条记录都是一个样的。
查询关系数据库的标准语言叫作 SQL。SQL 这个东西自从 IBM 发明出来以后,已经有 30 多年的历史了,人们爱它的有,恨它的也有。但是通常来说,程序员不太喜欢这个东西,因为它的基本理念和程序员编程的想法不一致。后来所谓的 NoSQL 风,指的就是那些不用 SQL 作为查询语言的数据存储系统,而文档数据库 MongoDB 正是 NoSQL 的代表。
和关系数据库相反,MongoDB 的数据模型很不一样。简单来说,MongoDB 面向的是集合而不是表,所有的数据存储都以集合为单位,而每个集合里面包含的东西则称为文档,一个集合可以包含无数个文档。每个文档,我们可以大致认为是个 JSON 数据模型。文档自带元数据。也就是说,MongoDB 里面每个集合的每个文档并不要求数据严格一致,而是可能千差万别。
MongoDB 还有一个特色,它的查询使用的不是 SQL,而是程序语言和 API。这样一来,MongoDB 对程序员就是一个非常友善的选择。当然,对于原本非常熟悉 SQL 的 DBA 和数据分析人员,这就显得不太友好了。
MongoDB 这个数据模型其实是非常脑洞大开的。在数据库领域的几十年发展里,很多人都试过各种各样挑战关系数据库的模型,但是鲜有成功的。即使成功了,也往往让人感觉雷声大雨点小,并不会对关系数据库的根本造成实质性的影响。然而 MongoDB 这个东西一出现,对有经验的数据库从业人员和使用者来说,第一个感觉就是这个东西是来搞事情的。
在开发 MongoDB 的过程中,随着开发的深入,10gen 的人越来越觉得原来那个云计算平台是个虚无缥缈的东西。而这个他们一手缔造的文档数据库,可能是一个惊天动地的大杀器!虽然这些人其实不是数据库领域科班出身的,但他们对于数据库领域某些弊端的深刻理解,的确是一般人望尘莫及的。
于是他们决定彻底忘记那个云计算平台,集中精力开发这个被命名为“巨大无比的数据库”的产品。在漫长的开发过后,2009 年 2 月 10gen 正式开源了 MongoDB 的第一个版本。这对于 10gen 来说是一个非常重要的里程碑。
然而我们必须要说,这个产品尽管看起来很新颖很有意思,但并不是一个很成熟的产品。它有无数多的东西没实现,有无数多的坑等着人们去踩。但是这些都已经不重要了,踩着 NoSQL 的东风,MongoDB 开始飞起来了。
10gen 是一家特别注重宣传的公司,它在早期就对如何花钱做宣传非常有一套。他们的做法是在全球各地资助成立很多的用户组,并组织每年一次的 MongoDB 大会。MongoDB 还开起了 Mongo 大学。他们知道自己产品的用户都是开发人员,因此只要开发人员说好,尤其是各个地区那些在圈内有名的技术大牛说好,那么不管这个产品实际上好不好,完善不完善,炒起来的感觉起码很好。
先把大家都绑上 Mongo 的船,再慢慢地修理这艘船也是一种做法。俗话说“吃人的嘴短,拿人的手软”,那些在 10gen 支持下成长起来的用户组,那些 10gen 给报销机票和旅馆来做宣讲的大牛们,互利互惠地就借着 NoSQL 的东风把 MongoDB 给“吹”起来了。
10gen 的 CTO 在某次采访中就说,他觉得与其花费那么多钱去做各种各样的广告,不如把钱花在资助用户组,资助 MongoDB 的会议上。让大家感觉到 MongoDB 产品好,公司对社区的支持力度大,是 10gen 花广告费的最佳途径。
踏上 MongoDB“贼船”的公司很多,比如说卖车的 Edmunds、美国版的“五八同城”Craigslist,以及老牌网络企业——思科。但是这些都比不上当年非常优秀的社交初创公司独角兽 FourSquare 使用 MongoDB 的影响来的大。当然这家公司现在是过气了,但在社交网络最为火爆的时候,FourSquare 可是非常著名的。
在 MongoDB 刚出来的时候,FourSquare 整个地“搬家”去用 MongoDB,这曾是一件非常大的事情。这件事情当然被 10gen 公司大书特书地进行宣传。而 MongoDB 在独角兽里面被广泛使用这一事实,让 MongDB 是新时代的数据库、MongoDB 适合开发 APP,以及 MongoDB 适合创业公司使用等等的观点,都瞬间被“吹”了起来。
到 2012 年的时候,作为 10gen 公司创始人之一的梅里曼,其与人联合运营的科技博客 Business Insider 把 MongoDB 作为仅次于 HTML 的新时代最重要的技能宣传给大家。一时间仿佛只要 MongoDB 掌握好了,就能够有一碗饭吃。而很多在线教育网站也专门开起课来,给那些急于从其他职业转战 IT 的人普及 MongoDB 的用法。
我们必须说,这种宣传非常成功。大概是因为 MongoDB 的创业者在这之前已经成功创业一次,要知道 DoubleClick 在网络广告领域非常成功,而且被成功卖给了谷歌,所以这些人搞创业公司的套路,一点都不像那些毫无经验的初创公司创始人。他们非常懂得如何做才能够最大限度地吸引眼球,最大程度地把自己的产品铺出去。至于盈利与否,在初创阶段,并不是他们最需要关心的问题。无论从何种角度去看,这个做法都很成功。
除了在商业宣传上很成功,10gen 发布 MongoDB 以后,在产品的开发和维护上也采取了和其他公司很不一样的策略。这个策略对于 MongoDB 的流行同样功不可没。
简单一点来说,10gen 公司决定集中精力做最重要的几件事情:
吸引客户上 MongoDB 的船;
让 MongoDB 更好用;
对常用的编程语言,提供各种各样的库和接口的支持;
整个技术支持团队非常地友善,而且尽职尽责。
10gen 公司重点去做的这些事情,有很多值得我们深思的地方。如果要简单概括的话,就是 10gen 公司希望所有使用 MongoDB 的用户都觉得这个产品非常非常地好用。如果万一真的出了问题,也有很好的技术支持来及时地解决问题。
这种用户体验,绝对是开源社区中其他产品所不能达到的高度。举个简单的例子,要想自己去部署 Hadoop 的一个计算集群,那绝对是一件老难老难的事情了。如果这个东西容易部署,也就不会诞生一批以卖“更好用的 Hadoop”为生的公司了。再举个例子,Hive 的部署也同样不好用。
如果我们从企业级应用上来看,Oracle 就是一个非常典型的难用的产品。一个企业如果想要把 Oracle 用好了,请有经验的 DBA 是基本条件,很多时候都需要咨询公司来帮助设计解决方案。这种项目的落地绝非简简单单就能行的。而 SQL Server 作为一个后起之秀,在数据库市场获得成功的一个重要原因,并非性能有多好,而是“很好用”。当然,SQL Server 只是和 Oracle 比起来好用得多。但是 MongoDB 就不一样了,10gen 公司的目标就是让 MongoDB 非常非常地好用。而且从这一点上说,他们做得非常成功。整个社区里无数的用户组在提供支持,10gen 自己的客服绝对是用户至上,有问必答,而且非常礼貌及时。整个 10gen 的开发重点,也是让用户更好上手。
所有的因素加起来,MongoDB 对于创业公司来说就变得很有意思了:这个产品很好上手,支持也很多,而且还免费。创业公司拿着这个轮子,可以迅速实现自己的业务逻辑,而不需要再去学习怎么搭东西。我想正是这个原因,突然之间就着 NoSQL 的春风,MongoDB 就开始流行起来了。
然而,接下来事情的发展,多少有些脱离美好的一面。MongoDB 从产品的角度来说,其实就是个半成品。MongoDB 实在有太多的东西没有做了,尤其是那些基本的东西,包括数据是不是会丢、结果是不是错的、并发做得好不好、支不支持事务处理,以及当规模上来的时候,能不能够通过加机器来解决问题。
这些看起来本应是一个数据库产品非常重要的、基本的东西,MongoDB 做得却很差。一般来说,当一个人开始用 MongoDB 的时候,并不会遇到这样的问题,当然主要还是规模不够大,不至于触发瓶颈和问题。当 APP 或者网站的规模上去之后,同时工作的人多了,问题就会越来越常见,越来越令人无法忍受。
而 10gen 的 CEO 在宣传时,又往往以极其夸大的方式,告诉大家 MongoDB 就是未来,MongoDB 就是一切。这样的结果就是:很多人用 MongoDB 去取代关系数据库。然而渐渐地,这些人发现这种取代并没有带来真正的好处,除了一开始开发省了点力气外,后面要维护的成本越来越高。
而 10gen 这种侧重于提高用户初始体验,外加一切都是 MongoDB 的宣传方式,终于导致了负面作用。有经验的程序员开始跳出来,在各种论坛里公开宣称千万别上 MongoDB 的“贼船”,因为虽然开船的时候容易,接下来要付出的代价也很大,一旦规模上来,各种丢数据的问题就都出来了。
10gen 的 CTO 经常亲自上阵去和这些程序员们 PK。他接受采访的时候说,MongoDB 是个新产品嘛,新产品总是会有这样那样的问题,请给我们一些时间。他在论坛上和这些程序员交流,通常来说跳不出这样一些套路,就是:
这个问题我们在下一版里会修好的;
这个问题我从来没有遇到过,估计是假的吧;
这个问题你给我们开 BUG 啊;
这个问题我不相信是真的,肯定是你们程序写错了。
不管你信不信,这种回复,加上 10gen 的公关能力,确实在很多时候给 MongoDB 赢得了修复问题的时间。但是这样的一种方式也让用户的接受度在降低。2009 到 2012 的三年里,MongoDB 被接受的比例一直处于飞升状态,而 2012 年开始这个曲线就越来越平。大家到底要不要用 MongoDB,已经不再是“无脑”上的问题,而是要反复斟酌之后再做决定的事情。
尽管 10gen 的 CEO 一直高调宣布 MongoDB 无所不能,大家赶紧上,实际上后面的几年里,很多人反而是渐渐地离开了 MongoDB。大家意识到,MongoDB 作为一个一开始上手很快的东西,可能只适合一个 V1 产品。产品上一点规模之后,背后的数据存储系统还是要换的。
当然,任何公司都有盈利的压力。MongoDB 作为一个开源、免费的产品,10gen 公司不可能免费赚吆喝,它烧在社区建设上的钱也不是小数目。10gen 推出盈利产品的第一步,是推出了对 MongoDB 的商业付费技术支持。
商业付费支持是很多公司常用的方式。比如说 Hadoop 平台公司的 Hortonworks,其收入就基本上依赖于其提供的商业付费技术支持。MongoDB 从这里开始赚第一笔钱,并且其技术支持以“态度好”而著称。
仅仅靠商业技术支持并不能为公司带来足够的收入,10gen 的另外一个创收途径是推出商业版的 MongoDB。和开源的 MongoDB 比起来,商业版的自然要带更多的功能。这些功能最主要的是一个加密的存储引擎——数据以企业级密码强度加密后再存储,以及额外的安全相关的功能,比如说 LDAP 和 Kerberos 的支持,等等。这方面倒是体现了企业级应用市场和开源小创业公司之间的差异:企业级应用市场对加密和安全相关的内容要重视得多,没有这些功能大企业是不会使用这些产品的。
在很长时间里,MongoDB 的企业版都是 10gen 公司最主要的收入来源。此外,10gen 也提供云上的托管服务,给那些不愿意自己管理数据库的人提供服务。MongoDB 的业务模式和赚钱模式都还是很清晰的,但是一个巨大的问题在突显:MongoDB 作为一个数据库,始终都不是一个成熟的产品,并因此给很多采用 MongoDB 的企业带来了一些出乎意料的东西。
2013 年的时候,10gen 公司觉得自己的名字已经不太符合现在的品牌效应了,于是正式更名为 MongoDB 公司,将产品名和公司名匹配起来。
尽管 MongoDB 的发展经历了很多曲折,它的产品在功能上、性能上有很多问题,乃至受到了某些程序员的公开抵制;尽管 MongoDB 的接受度自 2012 年以来开始大幅度降低,它在企业市场上却依然保持着一个非常可观的占有率。
今天,我详细讲了 10gen 在 MongoDB 的开发、推广、发展和营收上的策略。MongoDB 侧重于易用性和对社区的支持,对其他方面则有些忽视了。那么,倘若你在运营一家做工具类产品的初创公司,在技术发展上又会采取什么样的策略
Measure
Measure

2018/12/7

刘慈欣在2018克拉克想象力服务奖上的演说



未来像盛夏的大雨,在我们还不及撑开伞时就扑面而来!
未来以来,只是分布的不均匀 !

据亚瑟·克拉克基金会官网消息称,当地时间11月8日晚,在美国华盛顿D.C。西德尼哈曼剧院,由亚瑟·克拉克基金会举办的“释放想象力——构造未来”颁奖晚宴上,中国科幻作家、《三体》作者刘慈欣被授予2018年克拉克想象力服务社会奖,以表彰其在科幻小说创作领域做出的贡献。  


据了解,亚瑟·克拉克奖由亚瑟·克拉克基金会为纪念英国著名科幻作家亚瑟·查理斯·克拉克而设立,不定期评选终身成就奖、想象力服务社会奖、及创新者奖三大奖项,以表彰世界上最卓越并最富创造力的思想家、科学家、作家、技术专家、商业领袖以及创新者。


克拉克始终认为,人类构造未来最强大的武器就是想象力。而刘慈欣此前也多次向媒体透露,“我的所有作品都是对《2001:太空漫游》的拙劣模仿,科幻文学在此达到了一个顶峰,之后再也没有人能超越,即使是克拉克本人。”

以下为刘慈欣获奖致辞全文

先生们、女士们,晚上好:  很荣幸获得克拉克想象力服务社会奖.这个奖项是对想象力的奖励,而想象力是人类所拥有的一种似乎只应属于神的能力,它存在的意义也远超出我们的想象。有历史学家说过,人类之所以能够超越地球上的其它物种建立文明,主要是因为他们能够在自己的大脑中创造出现实中不存在的东西。在未来,当人工智能拥有超过人类的智力时,想象力也许是我们对于它们所拥有的惟一优势。  
科幻小说是基于想象力的文学,而最早给我留下深刻印象的是阿瑟·克拉克的作品。除了儒勒·凡尔纳和乔治·威尔斯外, 克拉克的作品是最早进入中国的西方现代科幻小说。在上世纪八十年代初,中国出版了他的《2001太空漫游》和《与罗摩相会》。当时“文革”刚刚结束,旧的生活和信仰已经崩塌,新的还没有建立起来,我和其他年轻人一样,心中一片迷茫。这两本书第一次激活了我想象力,思想豁然开阔许多,有小溪流进大海的感觉。
读完《2001太空漫游》的那天深夜,我走出家门仰望星空,那时的中国的天空还没有太多的污染,能够看到银河,在我的眼中,星空与过去完全不一样了,我第一次对宇宙的宏大与神秘产生了敬畏感,这是一种宗教般的感觉。而后来读到的《与罗摩相会》,也让我惊叹如何可以用想象力构造一个栩栩如生的想象世界。正是克拉克带给我的这些感受,让我后来成为一名科幻作家。  
现在,三十多年过去了,我渐渐发现,我们这一代在上世纪六十年代出生于中国的人,很可能是人类历史上最幸运的人,因为之前没有任何一代人,像我们这样目睹周围的世界发生了如此巨大的变化,我们现在生活的世界,与我们童年的世界已经完成是两个不同的世界,而这种变化还在加速发生着。中国是一个充满着未来感的国度,中国的未来可能充满着挑战和危机,但从来没有像现在这样具有吸引力,这就给科幻小说提供了肥沃的土壤,使其在中国受到了空前的关注,做为一个在1960年代出生在中国的科幻小说家,则是幸运中的幸运。  
我最初创作科幻小说的目的,是为了逃离平淡的生活,用想象力去接触那些我永远无法到达的神奇时空。但后来我发现,周围的世界变得越来越像科幻小说了,这种进程还在飞快地加速,未来像盛夏的大雨,在我们还不及撑开伞时就扑面而来。同时我也沮丧地发现,当科幻变为现实时,没人会感到神奇,它们很快会成为生活中的一部分。所以我只有让想象力前进到更为遥远的时间和空间中去寻找科幻的神奇,科幻小说将以越来越快的速度变成平淡生活的一部分,作为一名科幻作家,我想我们的责任就是在事情变得平淡之前把它们写出来。  

但另一方面,世界却向着与克拉克的预言相反的方向发展。在《2001太空漫游》中,在已经过去的2001年,人类已经在太空中建立起壮丽的城市,在月球上建立起永久性的殖民地,巨大的核动力飞船已经航行到土星。而在现实中的2018年,再也没有人登上月球,人类的太空中航行的最远的距离,也就是途经我所在的城市的高速列车两个小时的里程。
与此同时,信息技术却以超乎想象的速度发展,网络覆盖了整个世界,在IT所营造的越来越舒适的安乐窝中,人们对太空渐渐失去了兴趣,相对于充满艰险的真实的太空探索,他们更愿意在VR中体验虚拟的太空。这像有一句话说的:“说好的星辰大海,你却只给了我Facebook。”  
这样的现实也反映在科幻小说中,克拉克对太空的瑰丽想象已经渐渐远去,人们的目光从星空收回,现在的科幻小说,更多地想象人类在网络乌托邦或反乌托邦中的生活,更多地关注现实中所遇到的各种问题,科幻的想象力由克拉克的广阔和深远,变成赛博朋克的狭窄和内向。  
作为科幻作家,我一直在努力延续着克拉克的想象,我相信,无垠的太空仍然是人类想象力最好的去向和归宿,我一直在描写宇宙的宏大神奇,描写星际探险,描写遥远世界中的生命和文明,尽管在现在的科幻作家中,这样会显得有些幼稚,甚至显得跟不上时代。正如克拉克的墓志铭:“他从未长大,但从未停止成长”。  
与人们常有的误解不同,科幻小说并不是在预测未来,它只是把未来的各种可能性排列出来,就像一堆想象力的鹅卵石,摆在那里供人们欣赏和把玩。这无数个可能的未来哪一个会成为现实,科幻小说并不能告诉我们,这不是它的任务,也超出了它的能力。  
但有一点可以确定:从长远的时间尺度来看,在这无数可能的未来中,不管地球达到了怎样的繁荣,那些没有太空航行的未来都是暗淡的。  
我期待有那么一天,像那些曾经描写过信息时代的科幻小说一样,描写太空航行的科幻小说也变得平淡无奇了,那时的火星和小行星带都是乏味的地方,有无数的人在那里谋生;木星和它众多的卫星已成为旅游胜地,阻止人们去那里的唯一障碍就是昂贵的价格。  
但即使在这个时候,宇宙仍是一个大的无法想象的存在,距我们最近的恒星仍然遥不可及。浩瀚的星空永远能够承载我们无穷的想象力。   谢谢大家。
Measure
Measure

2018/12/2

抽烟!



抽烟,最近上瘾了。

饭后一根烟,赛过活神仙,醒后一根烟,赛过活神仙,我周围的烟民都这么说。最妙的是 ,抽烟的时候在配上一罐肥宅快乐水——可乐!现在的生活就是这样。

我抽烟的初衷倒不是因为上面的原因 ,实在是因为上课的时候老打瞌睡,抽根烟好让我清醒 。毕竟,也是为了学习才抽烟的 。确实,抽烟确实让我清醒了。如果还瞌睡,就抽烟,如果
还瞌睡就再来杯咖啡! 

现在的情况是,只要是不在公众场合,总要抽烟。独处的时候 ,烟更是一根接着一根,根本停不下来。


2018/11/30

阿里云的这群疯子




本文来自微信公众号:浅黑科技(ID:qianheikeji),作者:史中。
世事安稳,岁月静好。
电影里才有疯子。麦克墨菲在疯人院里带领一群精神病人揭竿而起,怼天怼地;饿了三天的黑皮为了抢一口面包被店主追上高架桥,末路狂奔;杰克和泰勒在午夜的搏击俱乐部里挥拳相向,鲜血淋漓。屏幕对面,我们把爆米花塞进嘴里,哭成狗或者笑成狗。电影散场,各自回家。
真正的疯子,从来不看电影。
他们把别人的目光变成聚光灯,把自己的生活变成真人秀,手提钢刀用肉身串演一个浓重的角色。他们的人生结局无外乎两种:黄袍加身,或者玉石俱焚。
阿里云这群疯子,就用56度的荷尔蒙,在横跨十年的悠长画布上涂抹了这样一个故事。
一、一个大问题
2008年9月,王坚加入阿里巴巴。
马云把他从微软亚洲研究院常务副院长的位置挖来,是因为阿里巴巴面临一个重大的危机——公司的“脑力”快不够用了。
阿里巴巴的“脑力”,其实就是“计算力”。
几亿用户无论是在淘宝剁手,还是支付宝上转账,这一切都要靠巨大的计算力来思考、记忆。
恰恰和人一样:
如果这个“大脑”记忆被填满,就没办法储存新的商品和交易记录。
如果这个“大脑”思维速度跟不上,就没有办法让用户及时下单、付款。
2008年,中国虽然已经加入 WTO,还把国际友人请来热热闹闹地开了一次奥运会,但在科技领域仍然是个标准的“三无”国家:没有自己的操作系统,没有自己的芯片,同样没有自己的计算力系统。所以,购买国外成熟的设备和系统,几乎是 BAT 和所有大国企的唯一选择。
国外的东西,无外乎“IOE”这三样标配:
I(IBM,服务器提供商,他们提供的服务器俗称“小型机”)
O(Oracle,数据库提供商,他们的软件是著名的“甲骨文商业数据库”)
E(EMC,存储设备提供商,他们提供的是“集中式存储”)
鲜有人知,那时的阿里像依赖氧气一样依赖 IOE。
一个支付宝的同事给了我翻出了当年的数据:2008年,在阿里的IT架构中,淘宝和支付宝使用的绝大部分都是 IBM 小型机、Oracle 商业数据库以及 EMC 集中式存储。
当年用户激增,数据越来越多,每天早上八点到九点半之间,服务器的处理器使用率都会飙升到 98%。离爆棚就差两个百分点。
阿里巴巴就像赛道上的跑车:速度飞快,但引擎已经发红,再踩几脚油估计就要冒烟,后果不堪设想。
可能连马云自己都没有想到,阻碍阿里巴巴增长最迫切的阻力不是商场上的博弈、不是政策的变化,而居然是 IT 基础设施的瓶颈。
怎么办?花钱继续买服务器和软件啊!
这话听上去没错。但是有两个小问题:
一个问题是太贵。
那时候小型机价格大概是从几十万到百万人民币;商业数据库软件费用差不多几千万,外加一大笔维护费。王坚 08 年刚来阿里时就给马云算了算,按照这样的速度“剁手”,光是买机器和软件就足够让阿里破产。阿里得找到一种成本更低的技术架构。
另一个问题是不好用。
阿里在08~09年的时候,业务增长速度实在太快。每年都是十几二十倍,IOE 虽然都是美国公司,但事实证明美国的月亮也不会更圆。它们的系统并没有经受过服务几亿人这么大规模的考验,此时已经变得非常难用了。
2008 年中旬,马云召开了内部会议。事情已经刻不容缓,要研发一套新的技术架构来换掉阿里巴巴的旧引擎。
这个新的计算架构应该是什么样呢?
首先,它要便宜。
就像一日和三餐一样,无论去哪家餐厅,都不如自己做饭更实惠。长远来看,自己开发一套计算架构显然是最经济的。
其次,它要好用。
为了满足阿里巴巴庞大的计算任务,这套系统至少要比 IOE 表现更好,能同时调度数千台计算机,组成一个巨大无比的“大脑”。
于是,“阿里云”这个词,第一次出现在公司高层的话语里。而王坚,加盟阿里巴巴之后的职务恰恰是“首席架构师”,他的使命就是从零开始建立这个云计算系统。
王坚
王坚是个理想主义者。
在他丰满的理想中,这个新架构的每一行代码都要自己来写。但现实骨感:环顾四周,他身边除了几位从微软带来的旧部,几乎一无所有。
2008年10月,这个想象中属于中国的云计算系统被团队定名为“飞天”,源自中国神话中的形象。
后来人们说,阿里云是技术驱动型的企业。不过在我看来,最初阿里云应该是起名驱动型的企业。名字倒是起得不错,但作为“三无”国家,底层科技起步较晚的中国在对美国的复杂计算机系统的战争中,几十年都未尝胜绩。
中国人研究的云计算,会“飞天”还是“坠毁”,旁人心里多多少少是有判断的,只是不便明说。
说回这个疯狂的计划。
飞天相当于一个发动机的,而时间紧迫,阿里巴巴准备同时做两件事:一边制造发动机,一边为自己的主力业务淘宝网顺便造一个整车出来。
当时,淘宝网在计算力方面的主要需求就是“大规模数据计算”。所以,用飞天为淘宝造“大规模数据计算”制造整车的计划就被定名为“云梯计划”。
实际上,“云梯计划”关乎阿里的生死,不是儿戏。思来想去,公司内部还是做了两手准备:
1. 用一些已有的开源软件为基础,研发一个数据计算系统,这是“云梯1”计划。
2. 而以“飞天”为基础,纯自研一套数据计算系统,被定为“云梯2”计划。
彼时绝没人想到,五年后的那个下午,这两座通向顶峰的云梯会用怎样的姿态占据画面的中心。千军万马雄列两旁,目睹荣耀的火焰和退潮的海水。
历史就这样以汹涌的姿态,向那些准备好的和没准备好的人敞开。
2009年,阿里云成立。
二、招兵买马
满弓是阿里云的第六位工程师。
招他进来的,是王坚在微软的旧部,阿里云的第一技术负责人林晨曦。面试结束时,林晨曦歪嘴一笑,提醒满弓:“你加入阿里云之后,要做好随时出差的准备。”
果然,满弓签完入职合同当天下午,就被“附赠”了一张火车票。他要去天津帮助招聘。
满弓这样回忆十年前的那个下午:
“阿里研发院” 2008年10月才成立,已经错过了招聘季的黄金时期。但是我们又确实太需要人才了,于是刻不容缓,要再扫荡一下那些大学,把“漏网之鱼”打捞回来。
2009年,阿里云的招聘海报
跟着阿里云的招聘队伍,满弓跑遍了全国主要的几大城市十几个学校。每到一个学校,只呆三天。
第一天做宣讲,然后马上笔试;第二天统一面试;第三天发 Offer。
彼时的阿里巴巴已经很有名气了。很多错过招聘季的同学喜出望外,一时间各大学校风起云涌奔走相告齐来应聘,虽然从招聘者到应聘者,都没见过云计算长什么样子。
由于招聘人手实在太少,面对堆积如山的笔试试卷,满弓他们根本判不过来。焦头烂额的满弓擦汗时一回头,看到了同行的 HR 小姐姐。满弓两眼放光,二话不说把她们揪过来,一晚上就教会了她们如何判卷。
当时判卷的场景
经过这样“连滚带爬”的招聘,到了2008年年底,阿里云凑够了了三十位工程师。
话分两头。
下有林晨曦招兵买马,上有王坚每天“画饼”。
马云深受王坚鼓舞。虽然不懂技术,但是他逐渐发现,云计算这件事情的价值比一开始想象中的要大得多。
这是因为云计算系统会制造出一种具有极强弹性的计算力。这样的计算力一方面可以为阿里巴巴添置家当,另一方面还可以“批发零售”给无数中小企业,为未来世界建设了一整套“基础设施”。
这样来看,就把“独善其身的工具”变成了“兼济天下的生意”,这不正是马云创建阿里巴巴的基本信念吗?
从这一刻开始,马云就对阿里云寄予重望。只要有空,就到阿里云的团队里和林晨曦、满弓这些工程师们一起聊天讨论。
马云、王坚和工程师们的合影
然而,事情发展到这里,就开始有些错位了。
阿里的很多的业务部门希望的是稳定地在现有系统上加以改进,最好别冒太大风险;
但飞天团队却黄巾高擎赤膊上阵左右开弓,想依靠一己之力,开发出一套改写世界历史,可以让中国人扬眉吐气的完美云计算系统
刚才我说阿里云是“起名驱动型的公司”,你看看这帮疯子给飞天内部模块的命名,就知道他们心里在想什么了:
分布式存储的系统,就像大地一样承载万物,那就叫“盘古”。
调度系统,需要“能掐会算”,就用懂得阴阳八卦的“伏羲”命名。
结构化存储系统,就用会盖房子的“有巢”。
网络通信,就用追日的“夸父”。
等等。
飞天团队一片斗志昂扬。
其他部门的很多领导层,用半信半疑外加慈爱的眼光看着他们。
三、淘宝的一场战争
时间不等人,转眼到了2009年。
在隔壁淘宝网的普通员工中,有人在“隔江犹唱后庭花”,有人却已经感到“山雨欲来风满楼”。
2009年,小邪刚刚加入阿里一年,在淘宝网参与系统研发。当时他和同事都感觉到,淘宝网面临的矛盾非常明显:
业务并不赚钱,09年只有一个季度勉强盈利。而赚来的这点钱,眼看都要填进去购买服务器和软件产品,入不敷出。
小邪记得很清楚,他昨天刚听说隔壁阿里云准备搞云计算,今天就迎来了一个“特殊的客人”。
林晨曦走到淘宝网技术团队面前,搬个板凳兀自坐下:“你们淘宝的大数据系统用我们的阿里云架构吧。”
“代码已经写了多少?”小邪问。
“几行吧。”林晨曦说。
事情就这样定下来了。
云梯1、云梯2,两套系统一边搭建,一边在淘宝内部实验,一边承担部分计算任务以缓解现有系统不足的压力。
当时淘宝技术保障数据库管理员的负责人是后羿。他几次欲言又止,还是硬着头皮在内部会议上宣布了这个消息:淘宝要放弃 Oracle,转投自研的数据库架构了。
结果,八十多个 Oracle 工程师把他堵在会议室里。“你再说一句试试?”
他们的愤怒完全合情合理。“如果上边铁了心要干,兄弟们的前途在哪里?”
最终,一场恶斗转化成了几十个工程师坐在会议室促膝谈心。技术人是讲理的:“淘宝已经这么大了,如果现在不刮骨疗毒,自己砸自己的饭碗,将来整个淘宝都会命悬一线,到时候大家还不是沦落天涯。”想通了这些,工程师们也冷静多了。
这八十多个工程师里,包括后来的阿里技术保障部负责人振飞。振飞站出来说:“好,让我们学新技术可以,但是咱们拿事实说话。你后羿敢不敢跟我打个赌?以三年为限,用新技术的淘宝核心交易系统必须达到零故障!”
后羿咬咬牙,敢!
但后羿一个人的分量还远远不够重。毕竟淘宝上有这么多业务,这么多买家,这么多卖家,万一数据迁移失败,谁来负责?时任淘宝技术总架构师行癫(现任阿里巴巴 CTO)见状,把心一横,宣布自己和部门也愿意站出来,共同承担技术风险:“干好了我们大家荣誉等身,干坏了要杀要剐我来扛!”
看到行癫都赌上了自己的身家性命,也就没人再说什么了。
2009年秋天,轰轰烈烈的 IT 架构升级项目在淘宝网正式启动。一群 Oracle 工程师,就这样含着泪,一点一点亲手拆毁自己安身立命的系统。
四、荒野求生
林晨曦用来“忽悠”淘宝网的“几行代码”,是在北京写出来的。
2009年春节上班第一天,在北京上地的汇众大厦203这间连暖气都没有的办公室里,一帮工程师一边口呼白气,一边敲出了“飞天”的第一行代码。
飞天的第一行代码
说起来,这个地方算是阿里云最早的办公室,但是门口也没个牌子。直到半年后他们搬出大厦,保安都不知道这帮神神叨叨的人究竟是干什么的。(不过十年后的今天,他们的手机里的很多 App 也许都跑在阿里云的服务上。)
每天,工程师们除了噼里啪啦写代码,还得顺便“荒岛求生”——自己订水、买垃圾桶、修桌椅板凳、修无线网,连茶叶和咖啡都是从自己家带来的。
不过,他们坚信自己在做的事情还是挺伟大的。“没准将来我们成功了,我们写的飞天第一行代码还能印在T恤上呢!”角落里有人瑟瑟发抖地说。
那个时候的他们,看上去和一帮戴着眼镜的教徒无异。
时间马上又到了夏天。北京的夏天,你懂的。当时测试系统的服务器就架在办公室里,这就是个巨大的火炉。大厦的空调不行,还没到七月份,程序员就热得撑不住了。为了降温,每天上午他们都叫冰场送两大块冰来。
有一次周六,马云来北京,专门到阿里云的办公室去看看。林晨曦赶紧想打开电脑给马老师展示一下自己团队的成果。结果按了半天开关,机器都没反应。他才发现大厦停电......马云就这样坐在办公室等了半个小时,直到物业恢复供电才一睹阿里云飞天系统最初的芳容。
王坚跟马云说,这帮人很能干,每天晚上都加班。马云惊了,在这种地方还能加班??没过几天,阿里云就搬出了这幢大楼,进入了有空调的办公室。
同事们往办公室里运冰
五、神坑,阿里云
金融大咖胡晓明,2005 年加入阿里,以办事雷厉风行闻名全集团。
2009年6月,马云找到胡晓明,准备交给他一个大任:内部创业,做阿里金融的总裁。
胡晓明信心满怀,准备撸起袖子说干就干。不料,马老师悠悠地说,不要急,你要先答应我两件事。
马云:“第一件事,你只能做100万人民币以下的贷款生意,帮助像当年的我一样借不到钱的创业者。”
胡晓明:“理解,这没问题。”
马云:“第二件事,你必须跟刚成立的阿里云绑在一起,用他们的技术架构支撑你的服务。”
胡晓明:“纳尼??!!”
这两件事,胡晓明最终都答应了。不过阿里云这帮看上去疯疯癫癫的人,他们技术到底靠不靠谱,胡晓明可是真没底。
金融不像别的业务,这可是一个数据都不能错,一个字节都不能丢。按照“行业祖训”,打死都得用 IOE 这些国外大厂的基础设施,现在可好,却非得用听上去就让人怀疑的“阿里云”......
“明明可以坐高铁,却偏偏要骑自行车去上海。”当时研发工程师王国涛的吐槽,代表了很多阿里金融同事们的心声。
但马老师肯定有马老师的道理。阿里金融的同事们只能硬着头皮跟阿里云的朋友们握握手。
“牧羊犬”是阿里金融的第一个产品,简单来说就是给淘宝商家贷款的项目。吐槽王王国涛回忆:“当时阿里云一边搭建飞天平台,我们就一边在飞天上面开发牧羊犬应用。这就像是开发商一边在造房子,我们一边在室内装修铺地板。”
飞天果然不负众望。
数据传输问题、计算稳定性问题、处理速度问题一样都不少,翻版篆版梅花版的错误层出不穷,各种 Bug 形式翻新,永不重复,这叫一个皮.....
阿里金融的工程师必须24小时盯着系统,才能防止酿成大错。当时情况危急到了什么程度呢?一位奶爸工程师为了值夜班盯系统,把自己小孩的哭声设成了闹铃。因为只有听到这个声音,他才能在无论多困的情况下从床上弹起来.....
这段时间,提到阿里云,阿里金融的程序员们都是“眼睛干干的,有种想哭的心情”。他们的经典吐槽大概是这样:人家的是云计算,我们家的是“人肉云计算”;人家的是“分布式计算”,我们家的是“分步试计算”.....
作为合作伙伴,林晨曦每天的表情都有点儿尴尬,出则满脸堆笑地帮阿里金融排除 Bug,入则愁容满面地和同事们一起修改代码。
眼看就要过春节了,两个项目都快撑不住了。
被“猪队友”坑得够呛的胡晓明气鼓鼓地带着核心骨干跑到王坚办公室门口“讨说法”。胡晓明这个人,是出了名的“只要认定的事情就一定要办成”,大有在王坚办公室打地铺静坐的架势。王坚无奈,派出所有的技术工程师,驻扎在阿里金融的现场加班开发,只为了“让兄弟团队能过个好年”。
好不容易捱过了 2009 年,春节过后,阿里云发布了一次大版本升级。升级完成的一瞬间,空气突然安静了:
飞天系统稳定得不像阿里云的作品.....
阿里金融从一口口呛水的状态,一下子冲出海面。
巨大的计算力让阿里金融实现了“秒级”放贷。这种技术进步让“小额多次放贷”成为了可能,这就让阿里金融几乎等于开挂,不良贷款率大大低于传统金融机构。也正是因为阿里云“高效低价”的加持,单账户每年的 IT 成本可以控制在1元以内。
阿里金融,成为了后来的网商银行。他们就这样无意间成为了中国第一个上云的银行。
胡晓明内心OS:宝宝心里苦,但宝宝要笑 T_T
六、“骗子”王坚
解决了稳定性,阿里云就像抓住了救命稻草,总算可以暂时喘口气。
这些成绩,也已经成功引起了其他公司的注意。于是 2010 年,在阿里巴巴出发两年后,很多大公司纷纷着手研究自己的云计算技术。
但所有人都没想到,有一只巨大的怪兽正在必经之路上静静等待着。
这只怪兽名为“5K”。
你还记得“云梯1”和“云梯2”两个项目吗?此时,终于轮到他们唱主角了。
两座云梯,就像“争夺家产”的两兄弟,规则很明确:
1、要想成功肩负起阿里巴巴的底层计算系统,就必须有能力独自调度 5000 台服务器。
2、两兄弟谁先跑到 5000 这根线,就“赢者通吃”,继承家业。
而 5000 这个目标,就写为 5K。
目标就摆在这,但无论是“云梯1”还是“云梯2”,都死活达不到这个指标。
李超是飞天伏羲调度系统的研发工程师。他用苦逼来形容自己的2010 到 2012。当时他带着同事们没日没夜地加班,收获的就是一个接一个的系统错误。
就这样,一年过去了,两年过去了。
王坚是一个性情温和的人,但是那段时间,他几乎天天跟团队拍桌子。
满弓回忆,每次一开会大家都会把桌子收拾干净,把水杯什么的拿走,以防出现“事故”。
我记得有一次博士(王坚)很生气,砰砰地拍手机。有一个工程师实在受不了了,说博士,你拍的是我的手机......
现实不是小说。神兵天降和剧情反转并不存在。纵然他们几乎尝试了所有可能的技术策略,但就是没有一种方案可以成功调度5000台机器。
2012年底,以开源软件为基础的“云梯1”计划实现了4000台集群调度,而阿里云团队更看好的纯自研的“云梯2”还在1500台集群的数量徘徊。
越是困难时刻,越会产生分歧。
实话实说,当时大多数的技术大牛,都觉得用经过全世界验证的 Hadoop 为基础的“云梯1”更有希望,对“云梯2”嗤之以鼻。而阿里云这帮人就是不认,因为根据他们的推断,Hadoop 在4K到5K的路上,肯定会遇到一个不可逾越的沟壑,于是倔强地带着团队大举投入“云梯2”。
在一片质疑和争吵中,“最寒冷的冬天”就这样降临了。
1934年到1936年,从苏区出发到陕北会师,三年长征,工农红军从8万人锐减到3万人。
从2010年到2012年,在阿里云最艰苦的长征三年,“战损率”只多不少。
由于没有成绩没有进展,连续几年阿里云整个部门都在集团拿最低分。
满弓、李超他们开始收到团队同学的辞职书,林晨曦也收到了部下的转岗信。这些邮件,最终都一封不少地塞在王坚的邮箱里。
一般来说,三年时间足够判断一件事情到底靠不靠谱。“世界末日”那年,人们几乎已经认定了阿里云不可能做出一套云计算系统了。不仅如此,很多阿里的同事都叫王坚“骗子”。开始大家还在背地里说,后来,大家都不再忌讳,公司里流传着很多骗子王坚的笑话。“一个学心理的博士居然当上阿里巴巴的 CTO,心理学学得真好啊!”
无论是“伏羲”还是“盘古”,这些开天辟地的名字,此时都成为了阿里云这些人要满足“个人野心”的明证,成为了狂妄的代价,成为了“不自量力”的耻辱。
当时内网论坛里对阿里云和王坚的吐槽
满弓、李超、飞天总架构师唐洪、林晨曦,他们每天都是低着头上班。今天,左边的工位空了,明天,右边的工位空了......
“谁也不知道王坚当时帮我们抗了多大的压力......”李超回忆起那段日子,只说了这么一句话。
眼看阿里云成立就要满五年了,集团里却风言风语地传着“阿里云要被撤掉”的消息。
某一天,马云突然召集阿里集团高管开会,所有业务部门的负责人都估计是马云要宣布关掉阿里云的消息,于是纷纷带上自己的技术负责人参会,准备一声令下,就瓜分阿里云的技术人才。
在 2012 年的阿里云年会上,王坚走上台,他紧紧攥着话筒,几次抬眼望向远处,几次欲言又止,最终泣不成声。这个曾经扬言要用一己之力把中国云计算镌刻在世界科技史上的“疯子”,就那样孤零零站在原地,面对台下黑压压的一群错愕的人。仿佛无数时间的列车在他眼前呼啸飞逝,而他手里没有握着任何一张车票。
这是阿里云故事里最为人所知的一个细节。但我猜很少有人记得,王坚一边哭,一边说了什么。
他说:“这两年我挨的骂甚至比我一辈子挨的骂还多。但是,我不后悔。只是,我上台之前看到几位同事,他们以前在阿里云,现在不在阿里云了......”
就像王坚的一位老部下把辞职信交到他手里时,对他说的那样:做云计算的感觉就像集体合围抱一棵大树,谁都知道最终大家的手会连在一起,但谁也不知道那一刻会发生在什么时候。真的真的对不起,我撑不住了......
如果把阿里云所有曾经的员工加起来,可能是现在的好几倍。有太多太多的人都在那段暗淡的日子里离开了。这不怪他们,任何一个能认真判断利弊的人,也许在那时候都应该离开阿里云。也许只有“疯子”,才会选择留下。
就在阿里云最危急的时候,好友朱珑找到林晨曦,鼓励他离职创业。但林晨曦给朋友撂下一句斩钉截铁的话:“现在我绝对不能走。如果你想等我创业,先让我把阿里云扶上正轨。”
阿里云苦苦撑着,人心飘摇,流言四起。
流言终于传到马云耳朵里。
“我每年给阿里云投 10 个亿,投个十年,做不出来再说。”他对着阿里巴巴集团所有人,斩钉截铁地说。
这一句话,让所有的流言顺次平息。
在阿里云年会上,马云做了这样的独白:
我知道,所有留下来的人其实是真正阿里云的精髓。
有的时候不是你技术有多强,而是我们有多团结,互相多配合,多支持,多理解。
换任何一个公司,吃不消内网上那么多人骂的,我有一段时间也是特别替大家难过,就像我骂儿子可以,我打儿子可以,不允许别人骂我儿子的,要不然我要翻脸的。
我没有想过公司内部对阿里云有那么大的意见,我真没想到。但是你们都扛过来了,这是我深以为傲的,如果你们能抗得过内部人骂,抗得过那么多人指责,我们还有什么扛不过未来五年的发展?
李超给我看了这张照片。
这是当年参加 5K 项目的同事。他说,这些人中现在只有十几个还在阿里巴巴。
李超又给我看了另一张照片。
阿里云成立满六年的时候,为所有从第一年走到现在的员工做了一个人偶。所谓的“所有”,只是眼前这五个人偶。满弓和李超就在其中,他们相顾一笑。
这场长征,从摩肩接踵走到踽踽独行。年轻的人们为了共同的梦想相互温暖,又难免为了各自的梦想互道珍重。只是那些曾经鲜活的伙伴,就这样成为离去的背影,越走越远,消失在视野里,也消失在生命里。
再多情的看客,恐怕也难解其中滋味。
七、5K
阿里云的神坑,不仅“坑”了胡晓明的阿里金融,也在“坑”淘宝网。
之前说过,淘宝网从2009年就开始了“云梯计划”。到了 2012 年,局面变得有些尴尬:
1. 无论是云梯1和云梯2,都没有冲上云计算的技术标准:5K 的规模。
2. 虽然没达标,但是淘宝网没有选择,只能“赶鸭子上架”,让两架还在试验中的云梯承担一些重要负载。
被刀架在脖子上的行癫心急如焚。
2013年3月28日,一封来自集团技术保障部架构师云铮的邮件直达高层:
按照数据增量与未来业务增长的情况,云梯1和云梯2两套系统的存储和计算能力将在今年6月21日到达瓶颈。
到那时,数据业务将会停滞,淘数据,量子能业务都会受到影响;阿里金融的贷款业务将因为无法进行信用数据运算而中止。
这一天终于来了。人们洪水般的“买买买”为阿里巴巴划定了 Deadline。要想维持正常的业务,他们必须在不到三个月的时间里解决问题。
这个时候,把飞天推上 5K,几乎已经是唯一的选择了。事到如今,这已经不是阿里云自己的战斗,而是整个阿里巴巴集团的“背水一战”了。
在这个关头,阿里云需要集团所有人的帮助。
各个部门的技术大牛迅速组成增援大军列立山头,旌旗飘扬。但是在进入战斗序列之前,一个纠缠了各路大神五年恩怨情仇的问题必须有个了断:
最初,因为要做两手准备,以 Hadoop 为基础的“云梯1”和以飞天为基础的“云梯2”一直并行。这个时候,时局已经紧迫到不允许团队分流,他们必须抛弃掉一个云梯。
抛弃哪个?
云梯1:依靠开源技术,更加成熟,但几年的实践证明,把它推到 5K 有明显的的技术瓶颈。而且,最核心的技术转向开源系统,也许会让阿里巴巴在未来遇到更多技术制约;
云梯2:自研技术,难度更大,但它的架构和代码都是基于阿里自身诉求而设计的。自主可控的 5K 一旦成功,就会打下阿里巴巴下一个十年的江山。而一旦失败,后果也将不堪设想......
此时做出任何抉择,都会彻底改变阿里巴巴的历史。但历史又只在彼时彼刻给阿里巴巴一次机会,开弓没有回头箭。所有人的目光都看向王坚。
王坚说了两个字:“飞天!”
再没有一句质疑,再没有一丝埋怨。那些曾经看好或者不看好飞天的技术大牛,这个时候撸起袖子一齐杀了进来。
核心技术系统的正明团队,全员投入 5K 的攻坚战;负责应用集测测试的许呙兢,在得知调度系统的日志自动收集和分析工具缺口严重,二话没说主动请缨;褚霸、多隆、长仁这些分散在各部门的的技术牛人也都冲进来了。各路神仙在这几个月亲近得不分彼此。
褚霸回忆当时的场景:“早上9点进入项目,11点我们就开始解BUG。” 
就连在电梯里,都会人问阿里云的同事“最近怎么样?需不需要帮忙?”他们来自一些兄弟团队,有负责安全的,有负责集成测试的。
阿里云自己的同事更是全力冲刺。
新员工刚刚入职,就立刻被派往“战场”。本来是北京分公司的员工,入职之后直接拉到杭州帮忙 5K 项目。都加入公司两个月了,还不知道自己北京的工位在哪里。
而一位叫做李泉的同事,连续几个礼拜连轴转,半夜两三点被叫起来解决问题,早晨八点又出现在工位上。被同事封为“李铁人”。
在最后的测试阶段,杭州和北京两个办公室的同事电话24小时通着,人可以轮班休息,电话不能掉线,那部用来接听的电话都烧得滚烫。
就这样,一行行代码累积起来,在赛博世界的疆土上一眼望不到边界。他们交错重叠,像从白垩纪开始慢慢累积的地层。直到这片大陆,终于浮出海面。
2013年6月底,5K进入了最后的稳定性测试。
怎么测试系统的问题定性呢?之前带领“八十勇士”围攻后羿的振飞,提出了一个真·钢铁直男的测试办法:拔电源。
他的理由是:“如果这种突然暴力断电都能撑得住,阿里云还有什么不稳定的呢?”
拉电的同学反复问了三遍:拉吗?拉吗?拉吗?最后才颤抖着双手拉下了电源。
这一刻,时间停止了,只有机器重新启动的声音。
四个小时以后,当系统完全恢复运行的时候,很多阿里云同事的背后,已经被冷汗打湿了。经过系统自检,一切正常。虽然还有十台服务器光荣就义。但是,数据毫发无损!
这一刻,在场见证的人都明白:成了。
所有的技术路线之争,所有的进退成败之辩,所有的隐忍委屈不甘,所有的怀疑嘲讽忧虑,就在此时此刻突然画上句号。
盛夏的杭州,阿里巴巴热血翻涌,阿里云的“疯子”们却心如止水。
八、阿里云这群疯子
阿里云,成为了中国第一家拥有完整云计算能力的企业。
2015年,在计算界的奥运会 Sort Benchmark 中,阿里云计算100TB数据排序只用了不到7分钟,把 ApacheSpark 之前创造的23分钟世界纪录一下子缩短了一多半。这说明,中国人研发的云计算系统不仅成功了,而且不比世界上任何现存的云计算系统差。
成功登顶的“云梯2”,后来更名为 ODPS,“加冕”成为了阿里巴巴各项业务通用的大数据计算平台。
ODPS 验证成功之后,阿里立刻启动“登月计划”,把所有的数据和计算都迁移到飞天为基础的系统上,全盘替代 IOE 和 云梯1。2013年5月,阿里巴巴最后一台小型机下线。7月,淘宝最后一个Oracle数据库下线。阿里巴巴这台战车,用了五年时间,在超高速行驶中,没有踩一脚刹车,成功更换了发动机。
因为突破了技术瓶颈,在 5K 之后,ODPS 只用了几个月就冲上了单集群 10K,进而实现了无限制扩展。到 2018年,已经更名为 MaxCompute 的 ODPS 达到了数万台的规模。
哦对了,还有一件小事。当年振飞和后羿的那场“世纪赌局”,后羿赢了。用了三年时间,新的淘宝核心系统果然实现了零故障。
这段时间,阿里云也迎来了两个变动:
2012年秋天,林晨赴约去创业。提及过往,他如此回忆:“阿里云的四年,像是过完了一辈子。以后的事情,都是下辈子的。”他和朱珑创立了依图科技,如今是人工智能领域最炙手可热的公司之一。
2014年秋天,胡晓明来了。这个当年去王坚办公室“上访”的热血青年,陪着阿里云走过了最漫长艰难的岁月。也正因如此,此时他比任何人都更坚信云计算的力量。
2015年7月22日,云栖大会北京峰会开幕。新的领导团队第一次在公众面前露面。
胡晓明任阿里云总裁。李津扛起产品研发,在淘宝网鼎力帮助阿里云的小邪作为技术顾问。等等等等。
名单里没有王坚。王坚知道,当有人能比他更好地带领阿里云前进的一刻,就是他放手的时候了。
这个老男孩,此时静静坐在时光的河岸边,痴痴傻笑。梦回少年,肝胆皆冰雪。
九、另一个奇迹
在阿里巴巴的云栖小镇,一尊雕像被竖立起来,雕像上只有两个字:“5K”。
5K雕塑,上面刻着飞天团队所有工程师的名字,无论 Ta 是不是仍然在团队。
之前有人无心说的那句“没准将来我们成功了,我们写的飞天第一行代码还能印在T恤上呢!”也成为了现实。
2018年现任阿里云产品总监何云飞身上就穿着“第一行代码T恤”
2013年,中国企业IT架构升级最好的解决方式,再也不是买来一台新的机器替代掉原有机器,而是采用云计算。
从这一刻开始,这些疯狂的技术宅才有了服务全世界企业的信心;也正是从这一刻开始,坐镇第一把交椅的传奇总裁胡晓明,带领阿里云进入了“攻城掠地”的时代。
中国的网站登录阿里云的比例,从20%,上涨到30%,上涨到40%,上涨到50%。全球19个地域,两百多个飞天数据中心顺次点亮。
每个季度,阿里云都保持同比增长100%,这样逆天的增长速度持续了12个季度。
2018年初的云栖大会上,在一幅硕大的市场曲线图面前,胡晓明抬起右手,这一秒,时间像是凝固了一般。
同一年,飞天云计算操作系统获得了一个特别的奖项——中国电子学会15年以来的第一个特等奖。
在芯片领域,我们面对美国垄断只得眼睁睁地沉默。
在操作系统领域,我们面对美国的背影只能艰难追赶;
但是在云计算这片土地上,从王坚带着一群理想主义者横空出世,到胡晓明把商业战场拉至和亚马逊的 AWS 同一级别。中国人用了十年时间造出的全球第三、亚洲第一的阿里云,不说和美国战为和棋,至少在世界的版图上夺下了堪称广袤的一片疆土。
如此,阿里云的疯子们,理应赢得光芒和荣耀。
创业维艰,唯有曾和死神擦肩而过的人,余生才会用十倍的速度奔跑。
2018年,当年为阿里云对接淘宝立下汗马功劳的小邪正式加入了阿里云,掌管“飞天八部”,阿里云所有的现役主力技术和前沿技术,都归至他麾下。
小邪:蒋江伟
小邪手中的弹药充足:
2017年发布的神龙云服务器,是对下一代云计算主机的探索。
同年发布的 POLARDB,剑指商业数据库 Oracle 和它的继任者 MySQL,也称得上是阿里云未来之星。
2018年初,飞天的分布式存储系统“盘古”升级到了 2.0,成为阿里巴巴统一存储平台。
2018年秋天的云栖大会上,唐洪、小邪、何导等阿里云大咖悉数登场,发布了飞天2.0。敢称 2.0,是因为他们把野心放到了“万物互联”的下一个20年。
如此尝试和未来对话的技术还有很多。
此刻的阿里云,手握历史上最好的一把牌。
十、尾声
不久前,王坚受央视《朗读者》节目邀请,回忆了阿里云的创业史。他平静地说:“阿里云是拿命换来的。”
能用命换来梦想,未尝不是幸事。
君不见,在无数个平行世界中,疯人院里的麦克墨菲最终都越狱失败,被医生切去前额叶,再无还手之力。
一群理想主义者的长征路上,一片落叶微微改变飞舞的方向,都有可能把他们引向另一个方向,另一种结局。如果重来一次,阿里云也许无法复现今天的疆域和荣耀。但历史没有假设,可叹阿里云这群人从第一天就无来由地相信,中国人有权拥有自己的云计算。
以身为棋,胜天半子。
阿里云的创业故事走到了封底。书中悲欢离合,凡此种种,也许只博看客一叹。只有那些经历过这一切的活生生的人,才能在时间的风尘里,循着自己的脚印依稀辨别来路。
而那些走散的人呢?
他们也许会在某个秋日回忆起和伙伴同行的日子,心怀感念;他们也许有了新的忙碌的生活,来不及回望;他们也许偶然翻到新闻,看到那年王坚的滚滚热泪;他们也许在饭桌上谈笑风生,聊到当时的兄弟,忽然抬眼望向远方,干掉一杯烈酒。
我想起一个小故事。
在最初面试时,有一个大牛程序员和满弓聊过之后,本想再考虑考虑是否入职。但是出门时,他看到了阿里云办公室上的一副对联,原地思考了几秒钟,转身决定马上加入。
那副对联是这样写的:
代码成就万世基积沙镇海
梦想永在凌云意意气风发
任何执拗都会成为过往,只有时间会告诉你对错。
人们总爱说一句话:认真你就输了。而我更相信另一句话。认输,你才真的输了。
本文来自微信公众号:浅黑科技(ID:qianheikeji),作者:史中。

Measure
Measure