作者 | 弹性计算团队
来源 | 阿里技术公众号
2019年云栖大会,阿里云正式发布第三代自研神龙架构,全面支持ECS虚拟机、裸金属、云原生容器等,贯穿整个IaaS计算平台,并在IOPS、PPS等方面提升5倍性能,用户能在云上获得物理机100%的计算能力。本文将为大家揭秘今年双11最具挑战的搜索广告、金融级业务核心交易数据库如何迁移至第三代神龙架构,详解神龙架构如何支撑阿里巴巴最大规模云原生实践落地,以及神龙架构如何通过宕机演练大考、备战双11的背后故事。
2020年的双11,天猫又创造了新的纪录:订单峰值达到创纪录的58.3万笔/秒,销售额达到历史新高4982亿,阿里云神龙再次成功扛住了全球流量洪峰。2020年是双11全面云原生化的第一年,也是神龙架构顺利支撑双11的第三年。
今年双11,基于第三代神龙架构,搜索、广告以及核心交易数据库等存储和网络高负载业务完成全面云化,神龙输出千万核CPU计算能力,完成了阿里巴巴经济体所有业务负载100%在神龙公有云部署。
两年前,阿里云神龙首次支撑双11大促;去年,双11核心系统全面on神龙;今年,双11所有业务部署在神龙公有云。神龙架构已连续三年顺利支撑双11,每年不变的是一如既往的表现平稳,为用户提供了如丝般顺滑的购物体验,而变化的是神龙架构的不断升级和迭代。
一 最具挑战、没有之一:搜索广告业务升级至第三代神龙架构
对于电商平台来说,搜索功能是最核心的功能,百微秒的结果展示延迟都将直接影响到平台用户最终交易的转化,用户体验至关重要。所以,搜索广告业务对计算和网络的性能要求是极尽苛刻的,而这也是目前神龙架构面临的最具挑战的业务,没有之一。
今年双11,搜索广告业务支撑了数以千计的会场场景,日均商品曝光千亿次;日均模型发布上万次,单模型容量1TB+,模型参数达千亿级,实时每分钟更新1亿模型参数;日均样本数据处理达100PB,单次请求超过200亿次浮点运算。这些数据的背后,搜索业务团队对底层基础设施提出了两大挑战。
极致的性能需求,要求双向百G全线速处理网络流量
根据历史数据预测,双11凌晨零点线上搜索广告业务的网络带宽将达到双向100G极限全线速,所以要求基础设施资源能配合提供双向100G全线速(line speed)流量带宽处理的能力,以确保顺利支撑零点流量峰值。实际在双11当天零点,线上大部分网络流量均来自搜索广告业务的弹性裸金属实例,网络带宽均如预期达到了极限全线速。
第三代神龙架构,通过网络硬件加速实现了网络带宽全线速处理,可以提供100Gbps网络带宽、2400万PPS网络转发和100万云盘IOPS,极好地满足了搜索广告业务双向100G全线速流量带宽的处理需求,不仅帮助搜索广告业务顺利扛过了双11零点流量洪峰,同时还提升了资源的利用率。
进一步提升离线搜索和在线搜索混部服务质量
搜索广告业务分为在线搜索和离线搜索,这两个系统对资源的需求是天然互斥的:离线搜索业务要求极高吞吐能力,需要确保数以亿计的数据可以在15分钟内完成处理完成;在线搜索则是对时延有极高的要求,需要确保1000万数据亚秒级处理的实时性和极高的可用性。
第三代神龙架构引入了高级QoS特性,可多级调度网络和存储QoS,实现多维度精准调度,极好地支撑搜索广告的离线业务和在线业务混部,最终帮助搜索广告业务实现了同时达到在线业务低时延和离线业务高吞吐的混部业务目标。
事实上,在阿里巴巴集团实际的业务场景中发现,在同样的资源配置的情况下,神龙裸金属比普通物理机的QPS可以提升30%,延时可以降低96.3%,资源利用率也有大幅提升。
二 扛住58.3万笔/秒新峰值,核心交易数据库on神龙
11月11日零点刚过26秒,天猫双11订单达到58.3万笔/秒的峰值,是2009年首次双11的1457倍,每一笔剁手交易操作都会经历一系列核心交易数据库的处理,如何保证全球最大规模交易高峰的海量订单的有序、准确和顺滑成为了核心交易数据库的挑战。
众所周知,数据库本身就是一个重存储的业务,核心交易数据库更是对资源的IOPS、时延等性能指标极其敏感。双11核心交易数据库之所以选择神龙架构,是因其能够满足“高并发、低时延、高稳定”三大需求。
高并发
在双11这样全球罕见的超大规模并发量场景下,计算能力是一个关键因素。升级迭代后的第三代神龙架构,存储和网络性能均达到500%提升,VPC云网络全线速转发,存储IOPS可达100万,存储每秒吞吐量可达到5GB,完全可以满足核心交易系统的交易高峰的订单处理需求。
低时延
得益于神龙芯片的加速能力,基于神龙架构的第六代增强型实例读延迟最低200 μs,写延迟能力100μs,每一个数据包最低延迟为20μs。在实际场景中,非常好地满足了核心交易数据库的时延需求。
高稳定
与其他无状态业务不同的是,核心交易数据库要求金融级的稳定性和容灾。稳定性恰恰也是神龙架构最重视的,神龙架构自研了非常轻量级的Dragonfly Hypervisor,在计算的抖动性方面可以做到百万分之一级别。得益于此,神龙架构顺利帮助核心交易数据库顺滑地支撑了双11购物季。
三 神龙架构,为全球最大规模的云原生实践提供支撑
2020年双11最重要的是完成了全球最大规模的云原生实践,创造了诸多的“云原生的第一次”:80%核心业务部署在阿里云容器ACK上,可在1小时内扩展超百万容器;首次大规模应用Serverless,弹性伸缩性能提升10倍以上;云原生中间件峰值调用量超百亿QPS。
与此同时,计算的纪录也被不断刷新:实时计算Flink处理峰值达40亿条/秒,相当于一秒看完500万本新华字典的所有信息;MaxCompute单日计算数据量达1.7EB,相当于为全球70多亿人每人处理230张高清照片。
神龙架构是真正为云原生场景打造的计算平台,为这场最大规模的云原生实践提供了坚实的底座。神龙架构通过I/O offload芯片加速,对容器等产品适配程度极高,能高效调度和自动化弹性伸缩的容器化产品,具备在3分钟启动50万核vCPU的极速弹性能力。
事实上,从设计到实现,神龙架构都是“为云而生”,不仅使得阿里云服务器比传统物理服务器性能更强劲,还能极大地帮助客户节省计算成本。最终,神龙架构为这场云原生化运动带来了澎湃动力和极致效能:每万笔峰值交易的IT成本较四年前下降了80%,规模化应用交付效率提升了一倍之多。
四 单实例可用性99.975%的底气,平稳应对“宕机”突袭大考
全链路压测演练是备战双11必不可少的环节,我们为突袭演练专门设计了App,简化成一个“按钮”,串联了阿里巴巴经济体的各种技术架构和业务手段。今年的演练多了一些意料之外的实弹突袭,包括断网攻击、集群宕机攻击和数据中心断电攻击等。突袭攻击如此凶猛,让技术工程师们没有一丝丝的防备。
10月某个凌晨的2点,“按钮”被按下,神龙云服务器被注入故障代码,一个拥有近千台服务器的集群瞬间宕机。
不到2分钟,运维监控大屏显示网络数值迅速下跌,技术保障团队迅速锁定故障源头、启动应急预案,紧急展开修复,随后确认主备切换。
10分钟,主备云服务器完成切换,一切恢复如常。
这似乎很疯狂,但能让公司提前为包括宕机在内的各种故障做好准备,将其影响降至最低,同时倒逼阿里技术持续进化,包括神龙架构。
神龙架构在这次宕机突袭中表现突出,架构健壮性经受住了大考,这要归功于ECS提供的主机迁移的功能,其实现依赖于配置可迁移、资源可迁移,网络可迁移,存储可迁移等关键技术,可以最小化降低客户业务中断。
同时,神龙架构还汇集了阿里云十年累积的上百万服务器历史故障数据、异常预测算法以及软硬结合的故障隔离、硬件加速的热迁移等能力于一身,能够保障70%以上的常规软硬件故障在发生之前无感消除。这些也是使得阿里云敢将单实例可用性目标提升至99.975%、多可用区多实例可用性目标定为99.995%的底气所在,这也是双11所有业务敢上云的原因之一。
作为阿里云基础产品部门最大的跨部门协同项目,第三代神龙架构迭代升级涉及到神龙计算、ECS、VPC、存储、AIS服务器和AIS物理网络等众多团队,更是经过长达两年的预研评估、产品立项、技术研发和灰度测试,最终才完成了阿里巴巴经济体所有业务负载100%在神龙公有云部署。双11是阿里云产品、技术和服务最大的“试炼场”,全量并顺利承载双11大促所有业务就是神龙架构能力最好的证明。
当前,阿里云自研的神龙云服务器支撑了各种流量高峰:如12306的春运抢票、微博热点的暴涨流量、钉钉2小时扩容10万台云服务器等。未来,历经多年双11实践考验的神龙架构将致力于更好地帮助客户实现业务的快速创新和飞跃。