摘要:不论什么站点的发展都不是一蹴而就的。它在发展过程中会遇到各种各样的问题和业务带来的压力。作者子柳从工程师的角度讲述淘宝这个超大规模互联网系统的成长历程,及其全部主动和被动的技术变革的前因后果。
2003年4月7日,马云在杭州成立了一个神奇的组织。他叫来十位员工,要他们签了一份协议,这份协议要求他们立马离开阿里巴巴集团,去做一个神奇的项目。这个项目要求绝对保密,老马戏称“连说梦话被老婆听到都不行,谁要是透漏出去,我将追杀到天涯海角”。这份协议是英文版的,匆忙之间,大多数人根本来不及看懂,但出于对老马的信任,都卷起铺盖离开了阿里巴巴。
他们去了一个神奇的据点——湖畔花园小区的一套未装修的房子里,房子的主人是马云。这伙人刚进去的时候,马云给他们布置了一个任务,就是在最短的时间内做出一个个人对个人(C2C)的商品交易的站点。这里出一个问题考考大家,看你适不适合做淘宝的创业团队:亲,要是让你来做,你怎么做?
在说出这个答案之前,我们先介绍一下这个创业团队的成员:三个开发工程师(虚竹、三丰、多隆)、一个UED工程师(二当家)、三个运营工程师(小宝、阿珂、破天)、一个经理(財神),以及马云和他的秘书。
当时对整个项目组来说,压力最大的就是时间,为什么时间这么重要呢?火云邪神先生说过“天下武功无坚不破,唯快不破”,另一个原因就是当时eBay和易趣在资本方面正打得不可开交,我们是乘虚而入的,等他们反应过来就危急了。那怎么在最短的时间内把一个站点从零開始建立起来呢?了解淘宝历史的人都知道淘宝是在2003年5月10日上线的,2003年4月7日到5月10日,这之间唯独一个月时间。要是你在这个团队里,你怎么做?不是“抄一个来”,我们的答案是——“买一个来”。
买一个站点显然比作一个站点要省事,可是他们的梦想可不是做一个小站点而已,要做大,就不是随便买一个就可以的,要有比較低的维护成本,要能够方便地扩展和二次开发。那么接下来就是第二个问题:买一个什么样的站点?答案是:轻量一点的,简单一点的。于是买了这样一个架构的站点:LAMP(Linux+Apache+MySQL+PHP),这个直到如今还是一个很常常使用的站点架构模型,其长处是:无须编译,公布高速,PHP语言功能强大,能做从页面渲染到数据訪问全部的事情,并且用到的技术都是开源、免费的。当时我们是从一个美国人那里买来的一个站点系统,这个系统的名字叫做PHPAuction(其官方站点 http://www.phpauction.net,Auction即是拍卖的意思,这个名字很直白,一眼就可看出这个系统是用什么语言做的、用途是什么),PHPAuction有好几个版本号,我们买的是最高版的,功能比較多,并且最重要的是对方提供了源码。最高的版本号比較贵,花了我们几乎相同2000美元(貌似如今降价了,仅仅要946美元,在他们的站点上有明码标价的信息)。买来之后不是直接就能用的,须要许多本地化的改动,比如,改动一些数据类型,添加后台管理的功能,页面模板改得美丽一点,页眉和页脚加上自己的站点简单介绍等。当中最有技术含量的是对数据库进行了一个改动,原来是从一个数据库进行全部的读写操作,如今把它拆分成一个主库、两个从库,并且读写分离。这么做的长处有几点:存储容量添加了,有了备份,使得安全性添加了,读写分离使得读写效率得以提升(写要比读更加消耗资源,分开后互不干扰)。这样整个系统的架构就例如以下图所看到的。
当中,pear DB是一个PHP模块,负责数据訪问层。另外,他们也用开源的论坛系统PHPBB( http://www.phpbbchina.com)搭建了一个小的论坛社区,在当时,论坛差点儿是全部站点的标配。虚竹负责机器採购、配置、架设等,三丰和多隆负责编码,他们把交易系统和论坛系统的用户信息打通,给运营人员开发出后台管理的功能(Admin系统),把交易类型从唯独拍卖这一种添加为拍卖、一口价、求购商品、海报商品(意思是还没推出的商品,先挂个海报出来,这是高速添加商品数的一个好方法)四种。(PHPAuction系统里唯独拍卖的交易,Auction即拍卖的意思。@_行癫在微博中提到:今天,eBay全部的交易中,拍卖交易仍然占40%,而在中国,此种模式在淘宝差点儿从一開始就未能占领优势,如今在主流的交易中差点儿能够忽略不计。背后的原因一直令人费解,我大致能够给出当中一种解释,eBay基本上仅仅在发达国家展开业务,制造业外包后,电子商务的基本群体大多仅仅能表现为零散的个体间交易。)
在开发过程中,这个项目的代号是BMW(没错!就是宝马的意思)。这个是二当家提出的建议,二当家特别喜欢宝马,他希望我们的站点也如同宝马一样美丽、高速、安全,充满乐趣。二当家如今的座驾就是一辆宝马X5,算是得偿所愿了。在上线的时候须要给这个站点取个名字,为了不引起eBay的注意,这个名字要撇开与阿里巴巴的关系,所以“阿里爷爷”、“阿里舅舅”之类的域名是不能用的。这时候,美女阿珂提供了一个很好听的名字“淘宝”。因为她家里有人热爱收藏古董,常常去市场上淘宝贝,而她本人也很热爱逛街,享受“淘”的乐趣,她认为“淘宝”两个字特别符合站点的定位(阿珂说想到这个名字的时候,脑子里一道闪电劈过,真的是“灵光一闪”。后来“支付宝”的名字也是阿珂取的)。于是这个大名就定了下来,淘宝网横空出世了。
在接下来的大半年时间里,这个站点迅速显示出了它的生机。这里有必要提一下当时的市场环境,非典(SARS)的肆虐使得大家都不敢出门,尤其是去相似商场等人多的地方。另外,在神州大地上最早出现的C2C站点易趣也正忙得不亦乐乎,2002年3月,eBay以3000万美元收购了易趣公司33%的股份,2003年6月以1.5亿美元收购了易趣公司剩余67%的股份。当时,淘宝网同意买卖两方留下联系方式,同意同城交易,整个操作过程简单轻松。而eBay是收费的,为了收取交易佣金,eBay禁止买卖两方这么做,这必定添加了交易过程的难度。并且eBay为了全球统一,把易趣原来的系统替换成了美国eBay的系统,用户体验一下全变了,操作起来很麻烦,许多易趣的卖家在那边都混不下去了,这等于是把积累的用户拱手送给了淘宝。为了不引起eBay的注意,淘宝网在2003年里一直声称自己是一个“个人站点”。因为这个创业团队强大的市场开拓和运营能力,淘宝网的发展很迅猛,2003年年底就吸引了注冊用户23万个,每日31万个PV,从2003年5月到同年年底成交额达3371万元。这没有引起eBay的注意,却引起了阿里巴巴内部许多员工的注意,他们认为这个站点以后会成为阿里巴巴强劲的对手,甚至有人在内网发帖,忠告管理层要警惕这个刚刚起步的站点,但管理层似乎无动于衷。(这个团队的保密工作做得真好!)
作者子柳:本名赵超,2004年加入淘宝网,取花名子柳。历任开发工程师、项目经理、产品经理、測试经 理,2009年随着淘宝系统的大规模重构和人才的迅速扩张,创办了“淘宝技术大学”,培养内外部工 程师众多,人称“校长”。2011年将培训中的内容写成文章发表,遂一发不可收拾,总结了淘宝十年 的技术之路,乃成本书。
本文节选自《淘宝技术这十年》一书,子柳著,由电子工业出版社出版。