工程师应该追求巅峰体验
“如果说淘宝以前是一家便利店,那么现在就是沃尔玛。”淘宝网系统架构师林昊常用“超市”来解释自己的工作,“如果把服务器类比成超市员工,那么淘宝网网站就是由1万多‘员工’组成的。”
林昊在淘宝网的花名叫毕玄。“这个名字出自黄易的武侠小说《大唐双龙传》中天下三大武学宗师之一的‘武尊’毕玄。取这个名字就是要像毕玄一样把自己掌握的高深技术展现给武林,让更多的人士了解我,了解淘宝。”林昊说。
相关资料显示,淘宝网已经成为一个“庞然大物”:2009年交易额达到2000亿元,占据当年国内社会零售总额近2%。权威机构Alexa发布的世界网站排名显示,淘宝网全球排名第20位,高于eBay、亚马逊等国际零售巨头;在中国则仅次于百度、腾讯、新浪与谷歌中国,位居第五。
淘宝网系统架构的发展趋势
和大多数工程师一样,林昊几乎不修边幅,以至于初次见面时记者无法将他本人与网上流传的照片对应起来。不过看上去他倒并不木讷,自始至终给人的印象都是阳光、开朗。
林昊说,2007年他到淘宝时正是淘宝网系统架构最艰难的时候,淘宝面临怎样把单系统向分布式系统转型的挑战。“如果系统不改造,按照当时的发展速度,淘宝网会在2008年完全死掉。”林昊解释说,业务量的增加迫使淘宝不断地增加服务器,但系统仍旧是一个,结果是系统越来越庞大,越来越不能满足业务量增长的需求,遭遇业务发展瓶颈。
此后,林昊开始了重新架构淘宝网系统的征程。“淘宝网采用分布式服务平台,将原有系统区隔成200个左右的小系统,通过分布式服务承担淘宝几乎所有Java远程调用的支撑及管理,并且将这一亚洲最大的Java系统调理顺当,逐步提高淘宝网的系统可用性、运行效率。”目前,淘宝网的系统架构已经走向正轨。
工程师对技术是敏感的,在谈及淘宝网系统架构水平在同行中的位置时,林昊想都没想就说在国内没有同行。但记者提及亚马逊与eBay时,他仔细想了一下说:“我们与亚马逊有较大的差距,但与eBay已经相当接近了。”
事实上,淘宝网从创立至今一直没有停止对领先者的追赶,从商业模式的颠覆到规模的赶超,技术跟进也越来越紧密。林昊表示,“分布式系统—自动化系统—智能化系统是互联网技术发展的常见模式,这其中涉及到非常多的技术,eBay的PPT确实让我们分享了很多这方面的技术。我觉得除了智能化以外,虚拟化或者云计算、节能技术也将成为互联网技术的重点。”
此外,在赶超领先者的同时,林昊也不忘学习领先者的做法。“淘宝已经把诸如eBay的优雅降级、Facebook的自愈系统等功能相继从概念转化为淘宝的特色功能,只要能让淘宝网系统架构更稳更快,就可以用于淘宝。”林昊说。
谈到工作中曾遇到哪些挑战时,林昊直言是“秒杀”。在他看来,这一网友热衷的抢拍游戏对于网站后台来说就是一个灾难,“瞬间增加的访问需求不亚于一次黑客攻击”。淘宝网在遭遇第一次“秒杀”时,其系统已到了崩溃的边缘。“不过,随着类似情况的频繁出现,我们已经制定了相应的策略,目前已经完全可以解决此类问题。”林昊表示。
工程师应该追求“巅峰体验”
正如毕玄所代表的武学宗师一样,技术高手对于技术的追求是无止境的,或者说是狂热的。林昊认为,工程师应该有追求“巅峰体验”的情结。
“很多人对技术的了解停留在理论上,因为平台是个更稀缺的资源。”林昊说,淘宝网最吸引他的就是能在这里处理业界最复杂的难题。
正如之前提到的,淘宝网已不仅仅是一个在线交易系统,而是融合交易、门户、社交网站等于一体的生活圈。
“很多架构师不知道如何应对大型、数据瞬间高发的场景,主要原因是没有这方面的实践机会,毕竟目前只有知名网站的后台系统才能获得这类难得的实践机会,通常在没有实践机会的情况下是很难完全理解这些技术的。互联网中的技术方案都是在多次血泪宕机下成长起来的。”林昊表示。
出于应对数据瞬间高发的压力与成本控制,淘宝网的中间件系统、文件储存系统、搜索、分布式框架、缓存系统都是自主开发的,这也给工程师带来许多机会,可以看到软件的源码,研究了解软件内部的工作过程和原理,对应用设计、开发、查错、优化都是非常有帮助的。
由于淘宝网系统架构的庞大与复杂,对于很多工程师来说,“看一看淘宝网的系统架构一直是我们的心愿”。
“我经历了淘宝网点击量从3亿猛增到10亿的过程,这段时间的技术挑战对我来说是最宝贵的,使我获得很多宝贵经验。”林昊说,能给你这种经历的公司在全球也是屈指可数,在中国就更少了。
无论如何,随着淘宝网发展的加速,其赶超eBay的趋势更加明显,对于工程师来说,这意味着再也不能简单地亦步亦趋。“淘宝网正在长大,更多的时候我们必须独立面对问题。”林昊语气里更多的是兴奋,“我们希望更多的同道能来到淘宝网,体验这种巅峰感觉。”