2013年6月18日星期二

“双11”电商狂欢背后的云计算

数据解读2012年的“双11”
2012年淘宝“双11”的交易总额达到惊人的191亿元。根据国家统计局发布的数据:2012年10月中国社会消费品零售总额为18934亿元,平均到每天约为610亿元。这意味着在“双11”当天,中国人消费的每3元钱中就有1元是通过淘宝平台交易的,同时标志着以淘宝为代表的电子商务新经济的巨大胜利。
在激动人心的业务数据背后,淘宝技术平台和商家自身的技术平台承受了巨大压力——世界上再没有一个网站比淘宝“双11”当天的并发访问量还大。在这场业务和技术的双重盛宴中,云计算发挥了中流砥柱的作用。本文将为大家详细分析云计算为商家带来的价值以及云计算如何帮助商家解决其技术难题。
谈到2012年“双11”流量高峰对技术平台的挑战就不得不提到“聚石塔”。聚石塔是淘宝推出的电商开放云工作平台,以阿里云云计算服务为基础,为商家提供了进销存OMS/ERP系统、仓储WMS系统、物流TMS系统、会员CRM系统的IT运行环境,这些信息系统帮助商家完成库存管理、发货管理、客户服务等工作。不夸张地说,2012年“双11”即使淘宝自身的商品浏览/交易系统能应对流量高峰,但如果商家自身的这些信息系统崩溃的话,商家也将丢掉191亿元中的绝大部分订单而无法给买家发货,所以说聚石塔在2012年“双11”发挥了重要作用。同时,聚石塔是阿里云所有云计算服务亮相最完整的组合应用场景,包含了云服务器、负载均衡服务SLB、关系型数据库服务RDS、开放存储服务OSS、开放结构化数据服务OTS、云监控、云盾,这标志着阿里云云计算技术的成熟达到新的高度。经过了最复杂应用场景的实战考验,请看看聚石塔在2012年“双11”震撼人心的数据:
  • 20%:聚石塔内ERP系统处理的订单量占淘宝和天猫全站订单量的比例为20%;
  • 单商家65万订单:某保暖内衣品牌官方旗舰店当天收到订单65万笔,这相当于国内一线B2C公司一天的订单量总和;
  • 0丢单:聚石塔内所有商家的信息系统0丢单;
  • 0故障:“双11”当天聚石塔平台技术0故障,相比之下,某家纺品牌2011年“双11”丢失了2万个单子,经济损失50万元;
  • 5分钟:帮助5个商家在5分钟内把系统迁移到聚石塔平台,为其挽回经济损失2000万元;
  • 24次攻击:帮助聚石塔内商家抵御了24次异常网络攻击。
云计算给商家带来的变化
先来看看2011年“双11”没有使用云计算服务的淘宝商家的备战过程:
  • “双11”前2个月前就要开始采购服务器资源,买多了浪费、买少了不够用,这些资源在“双11”之后就处于闲置,成本高昂;
  • 需要聘请运维专家购买服务器、租机架、规划网络,其中一个商家从代理商那里买到的DELL服务器是假货,正准备和代理商打官司,这些繁琐的工作经常影响商家促销活动的执行;
  • 某商家的淘宝店铺售出1万件商品,但商家的发货系统没有接到订单,于是没有给买家及时发货,后续投诉不断造成其淘宝店铺信用大幅下降;
  • 某集团的ERP系统在2011年“双11”几小时不可访问造成经济损失上百万元;
  • 商家想在“双11”当天组织更大的促销活动,但被技术人员告知后台系统无法支撑更大压力而只能取消。
2012年“双11”淘宝商家因为有了云计算服务为基础的聚石塔,再来看看他们如何轻松淡定地应对:
  • 用鼠标在网站上进行1分钟的操作就购买到了云服务器、负载均衡服务以及各种存储服务,无需事前的精细规划,也无需聘请运维专家;
  • 100台云服务器从购买到启动只需10分钟;
  • 系统再也没有丢单问题,2012年聚石塔内商家0丢单;
  • “双11”当天订单量来多少接多少,无需担心系统能力不足;
  • 某服装品牌官方旗舰店在“双11”当天临时加大促销力度,后台系统依然坚如磐石;
  • 某电子商务营销公司基于开放存储服务OSS搭建的流量导入静态网站,“双11”全天只花费了2.8元。
从使用云计算服务前后的对比可以看到,云计算给商家带来了实实在在的好处:使商家技术平台的构建更加容易从而专注于自身业务创新;使商家技术平台的运行更加稳定,使商家技术平台具备良好的伸缩性;同时还使其IT成本显著下降。
云计算如何解决商家的技术难题?
让我们先梳理一下“双11”商家的技术平台会面临的困难:
  • 系统访问量不可预测,瞬间高并发访问使系统崩溃;
  • 系统压力增大后各个信息系统都可能遭遇单点瓶颈或故障;
  • 遭遇异常网络攻击后束手无策;
  • 业务变化频繁,提前数月采购服务器风险高且极易浪费。
那么面对这些技术挑战,云计算是如何帮助商家应对的呢?图1显示聚石塔内商家基于阿里云服务的系统架构。
以上系统架构包含了阿里云的负载均衡服务SLB、云服务器、关系型数据库服务RDS、开放存储服务OSS。SLB和云服务器组合起来负责提供对外HTTP服务,云服务器上部署了Apache或Nginx,SLB负责流量转发;RDS负责存储用户信息、商品库存信息、发货信息等需要关系运算的结构化数据;OSS负责存储图片、视频、音频、大文件等数据;另外SLB、RDS、OSS都会处于云盾的安全防护之下,可自动防御异常网络攻击。
用户请求的处理过程如下:
  • 用户通过终端提交HTTP请求,SLB把请求转发到某个云服务器节点上的HTTP Server;
  • HTTP Server向后端的RDS集群请求结构化数据;
  • HTTP Server向后端的OSS集群请求图片、视频数据;
  • HTTP Server向用户返回请求结果。
接下来逐条分解云计算如何解决商家的4个技术难题。
  • 系统访问量不可预测,瞬间高并发访问使后台系统崩溃
云计算通过两种技术手段来应对不可预测的访问量:第一,多个分布式集群把资源池和处理能力配备得足够大,大到远远超过用户可能出现的峰值访问量的需求;第二,通过极高的弹性来保证应用系统可以快速地获得计算资源和处理能力。
在处理能力方面,阿里云的OSS每秒请求数能达到50000,数据存储量能达到10PB,下行带宽能达到上百Gbps,RDS的单机iops能达到40000,云服务器的实例数能达到20万台,云计算底层平台飞天单集群规模已经达到10万核,达到了世界领先水平。另外,云计算的合理假设是平台上所有客户不会同时达到访问量峰值,这样“双11”虽然电商系统的峰值访问量大,但平台上所有客户的访问量总和增加并不大,云计算服务能轻松应对。
在弹性方面,OSS和SLB是实时的弹性,后台为单个客户配备的处理能力会随着客户业务的变化而实时变化,云服务器的弹性扩容周期在5分钟以内,也就是操作系统启动的时间,另外同时获得100台云服务器实例只需要10分钟,资源的获取效率在传统模式下无法想象。
案例:2012年“双11”,广东某服饰商家原本预计全天的订单量是1万多单,刚开始并没有将系统部署在聚石塔的云平台上。但上午10:00,该商家的订单迅速升至2.7万笔,其后台系统接近瘫痪,漏单数达到了1.8万单,直接经济损失400万元,于是他们当机立断把系统迁移到聚石塔。迁移上来后,由于有了云计算的巨大处理能力和弹性扩容保证其系统能应对瞬间的并发访问,再无丢单情况发生。11月12日凌晨,该商家的负责人满怀感激地说:“非常感谢你们的快速响应,更感谢聚石塔和云计算救了我们!”
  • 系统压力增大后,各个信息系统都可能遭遇单点瓶颈或故障
商家信息系统通常遭遇的单点瓶颈类型有:单个数据库服务器磁盘iops能力耗尽、单台Web服务器CPU Load过高或内存不足,在真实访问压力来临之前难以准确预知哪个子系统会遭遇单点瓶颈。最好的选择是将各个子系统设计成分布式的并能平行扩展,不管是数据库、Web Server还是存储系统都需要分布式,但分布式系统设计的复杂程度让大部分商家的技术团队望而却步。云计算服务将分布式系统的复杂性屏蔽在内部,帮助商家建立可以水平扩展的应用系统,完全消除了上层应用的单点瓶颈。在上述商家的典型系统架构图中,当前端HTTP服务遭遇瓶颈,可快速添加云服务器服务节点到SLB中提升前端的处理能力;当OSS的处理能力遭遇瓶颈,OSS系统内部会自动扩展并保持对应用层透明。OSS的平行扩展方式如图2所示,oss.aliyuncs.com是OSS唯一的对外访问接口,后面部署了多个OSS存储集群,每个OSS存储集群中有多个存储节点,蓝色部分的“存储节点N+1”和“OSS存储集群N+1”都是自动扩展出来的,在这种结构下,OSS的处理能力可以无限扩展。
案例:2012年“双11”,广东某皮具商家的ERP系统有段时间访问缓慢,有部分订单在排队处理中。当收到监测数据的报警后,聚石塔在5分钟内为商家添加了前端云服务器节点,系统处理能力通过平行扩展后迅速提升,对订单的处理立即与淘宝技术平台实现了实时同步。
遭遇异常网络攻击后束手无策
网络攻击的危害很大,同时也是系统维护人员最头疼的事情。各种网络攻击防不胜防,常见的攻击类型有DDoS攻击(CC、SYN flood、UDP flood)、破解主机密码、利用网页漏洞进行SQL注入和挂载木马等,如果商家没有一个专业的网络安全团队,遭遇网络攻击后基本上就会束手无策。阿里巴巴集团用十年的网络攻防技术积累打造出全方位的安全产品——云盾,提供防DDoS攻击服务、防入侵以及网站安全检测等功能,还在多个云计算服务的外层建立了强大的主动防御体系,云服务器、RDS、SLB、OSS外层都默认部署了云盾。当用户的访问流量经过互联网到达阿里集团的内部网络时,需要经过多个硬件防火墙和流量清洗设备,然后经过云盾的异常流量检测流程,最后到达用户的SLB和云服务器。SLB和云服务器内部还配备了应用防火墙功能,能穿透这层层安全防护的异常流量少之又少,商家无需再担心被攻击的严重后果。
案例:2012年“双11”当天,聚石塔内某电商服务商的其中一个ERP系统遭受UDP flood攻击,流量达到20Gbps,国内已经没有其他安全产品能抵抗住这个规模的攻击。云盾团队收到短信报警后迅速响应,通过调整流量清洗设备的多项配置将异常流量抵挡在外,而客户系统的正常访问不受影响。后来黑客还多次发起攻击都无功而返,这次精彩的安全攻防战让黑客也束手无策了一回。
  • 业务变化频繁,提前数月采购服务器风险高且极易浪费
前文已阐明云计算技术帮助商家应用系统变得弹性,系统规模能随着业务的变化而变化;而云计算服务按实际使用收费的模式则帮助商家消除提前采购服务器的财务风险。另外,无需为业务峰值需要的硬件资源提前投资,5分钟内即可获得需要的计算资源,可以帮助商家大幅降低IT成本。
案例:2012年,浙江某电子商务营销公司的技术人员在11月1日找到阿里云,说要构建一个在“双11”期间承接外部广告流量的静态网站,网站最终把流量导入淘宝的多个店铺。那时离11月11日只剩下10天,采购物理服务器租机架肯定来不及了。阿里云的架构师了解到客户的网站“双11”当天承载的访问量大概是20万PV,每个PV下载的数据量60k左右,重要特征是网站是纯静态的,于是建议其使用阿里云的OSS部署网站,结果1天就完成了网站的开发和上线。该公司在“双11”当天多次加大导入的流量压力,因为OSS系统规模具备伸缩性,网站的访问速度一直保持在30ms以内;另外OSS的收费模式是按实际使用的资源付费,最终它在“双11”当天支付给阿里云的费用只有2.8元,而客户用这2.8元支撑了50000元的销售额。后来该公司的CEO知道此事后还专门咨询阿里云到底是怎么做到的,阿里云给出的回答是:因为有了云计算!
从“双11”的诸多案例中不难看出,云计算服务的核心价值是把商家从复杂的技术问题中解放出来使其专注于核心业务。以阿里云为首的中国云计算公司正在悄然地改变许许多多的产业,电子商务产业是其中的典型代表,每个产业中能充分认识和利用云计算价值的企业很有可能会成为其产业的下任领导者。
作者李金辉,阿里云云计算业务部业务架构师,负责云计算产品的规划设计及云计算应用系统架构。北京理工大学模式识别专业硕士,拥有8年大型分布式软件开发和架构经验,5年软件项目管理经验,对云计算底层系统、在线搜索引擎系统、大规模离线数据处理系统的架构设计有深刻的理解。

没有评论:

发表评论