服务器 频道

高并发应对:淘宝CDN缓存服务器部署探秘

  “不只是攒个机器”

  “定制低功耗服务器,表面上看是攒个机器,不过实际上并非如此简单。”章文嵩告诉记者。

  市场上传统的低功耗处理器,其节省功耗的原理,是在原有高性能处理器的基础上,通过控制处理器在闲时的主频和耗电,同时简化乱序处理的逻辑模块,来减少不必要的消耗。但该方式受限于原有的高性能架构,整体功耗降低效果并不明显,特别是在IO密集型的业务上。而淘宝网用于静态内容加速的CDN Web Cache服务器,主要功能正是对静态的网页和图片进行读写操作,属于IO密集型业务。

  “因此,针对IO密集型业务,我们需要寻找区别于以往传统的、更低功耗的处理器和服务器方案。”章文嵩说。

  项目启动之初,淘宝选择某知名芯片平台供应商作为合作伙伴,并于2010年6月制作出原型机,但遗憾的是,该原型机未能通过线上测试。因此,2010年8月,淘宝选择在整机解决方案方面比较有经验的美国超微公司和英特尔。最终,在三方的努力下,基于凌动处理器D525的低功耗服务器定制成功,并于2011年6月开始在淘宝实施规模化部署。


淘宝产品经理 何燕锋

  在杭州华数机房,负责该服务器定制的产品经理何燕锋带领记者实地参观了一处由该低功耗服务器所搭建的CDN节点机群。其中,一个2U空间里能放8台凌动低功耗服务器(8台服务器共享一个机箱),单台服务器功耗仅25W,也就是说,这8台低功耗服务器的总体功耗也才200瓦。这200瓦是什么概念呢?何燕锋指着该CDN节点机群中一台服务器,告诉我们说,那就是市面上的普通服务器,主要负责调度功能,其功耗为150W,占1U空间。两相对比,低功耗服务器的低功耗高密度的优势十分明显。

  值得一提的是,章文嵩和他的同事发现,淘宝CDN缓存对象具有的特征是:18KB以下的对象数量占总数量的80%,而存储量只有不到40%;同时,80%被访问对象所占用的存储空间不到20%。这意味着“热数据”(访问频次高的内容)占的空间其实很小,而“冷数据”(访问频次低的内容)所需存储量很大。因此,淘宝特意为该低功耗服务器引入分层存储机制,所以单台低功耗服务器的硬盘其实是由一块80GB的SSD盘和两块500GB的SATA盘组成。这样,“热数据”存放在SSD盘上,“冷数据”就存放在SATA盘上,从而兼顾速度、容量与成本。而分层存储调度软件则由淘宝独立开发。

  2011年2月,该凌动低功耗服务器投入量产。随即,淘宝人又紧锣密鼓地开始了系统优化工作。章文嵩告诉记者,在没有优化之前,单台低功耗服务器的QPS(每秒查询率)数大约在900左右,离他们既定的目标(1000QPS)还差一点。然而,当他们将硬盘访问模式改为ACHI/RAID之后,QPS立刻跃升至1300;再通过优化IO、网络、SMP affinity等工作,QPS数到达1700,大大超过原来的预期。

  “我们正在重写一个轻量级Cache软件,希望能将OPS数提升到1900。” 章文嵩说。

  据悉,目前淘宝一共部署了十多个低功耗CDN节点机群,共部署了约800台凌动低功耗服务器。大部分凌动节点都服务到了上联链路的限制值——10Gbps,此时的单台低功耗服务器的服务QPS数在1200以上,而CPU负载不超过70%,整体的I/O也不过50%左右,且整体缓存服务的响应时间都在20毫秒以下。

  “本次淘宝‘双11’购物狂欢节,我们CDN承受了全网近90%以上的流量,这一天的CDN带宽峰值到达800多Gbps,可以说真正通过了考验。”章文嵩说。之后的淘宝“双12”带来了更大的流量“洪峰”,淘宝CDN亦安然承受。

  此外,何燕锋亦透露,他们还拿到了英特尔SandyBridge(15W)低功耗处理器(英特尔在微服务器上的主打处理器之一)样片,并在CDN缓存应用上进行了性能测试。

  “SandyBrige(15W)低功耗处理器采用双核架构,主频只有1.2GHz,但L3的缓存有3MB。如果单看主频的话,很难想象这样的处理器能有多么卓越的性能,测试结果却出乎意外,单台服务器的性能能够到4500QPS, 几乎是我们现在这款低功耗服务器的3倍,而功耗则相差不到2W。”何燕锋说。

  因此,只要该款处理器价格合适,淘宝将在下一代低功耗服务器中采用SandyBrige(15W)处理器。

0
相关文章