从步履蹒跚到举重若轻,阿里基础架构如何扛住全球最猛的流量洪峰?
第十个双11即将来临之际,阿里技术推出《十年牧码记》系列,邀请参与历年双11备战的核心技术大牛,一起回顾阿里技术的变迁。
今天,阿里平台技术事业部资深技术专家叔同,为我们讲述基础架构这十年的演进历程:从技术追赶期,技术成熟期,再到爆发期,我们不仅支撑了双11年年攀升的峰值,更将万笔交易新增成本下降为原来的1/4。这一切离不开集团容器化、统一调度、混合云弹性架构、混合部署、存储计算分离等技术。
资深技术专家叔同
2018年是双11的第十个年头,回过头来看在基础技术领域的发展可以分为三个阶段:
1、2012年及以前属于技术追赶期,主要是遇到问题解决问题,最大的挑战是稳定性;
2、2013年到2014年属于技术成熟期,沉淀和创造了大量技术。包括全链路压测和异地多活,能够保住稳定性基本盘,实现跨地域水平扩展,IDC/网络/服务器从维护运营向自主研发演进。这一时期业界Docker和Kubernetes开始起步,阿里也同期开始了Pouch容器和Sigma集群管理前身的研发(AliDocker/Zeus);
3、2015年及以后属于技术爆发期,技术迭代速度加快,基础设施通过集约化和统一化进一步释放规模红利。包括基础设施的升级,大规模基地型数据中心落地,在线业务容器化的完成,从单一业务调度向统一调度全业务在离线混部演进,从集团自身到集成阿里云公共云搭建混合云弹性架构,存储计算分离等,统一调度云化架构开始发挥威力。通过基础技术的升级和统一,提高了全局资源复用能力,不但提升了技术端的效率,大幅降低成本,还提升了技术控制力,进一步增强稳定性,并且开始了智能化的尝试和演进。
其中有几个关键节点:
2013年全链路压测上线,使我们具备了业务链条全覆盖的压测验证手段,有能力在生产环境去保障系统稳定性的确定性。
2014年单元化异地多活应用于双11,使我们具备了远距离异地部署和异地扩展的能力。
这两种技术结合起来,使我们具备了使用弹性资源快速扩展,并能快速验证稳定性交付验收的能力,使得双11峰值高速增长快速扩展下的技术保障成为了可能。稳定性和可扩展的问题解决了,面对双11峰值,接下来最大的挑战就是成本。
2015年混合云弹性架构,自研基础设施;2016年容器化、统一调度;2017年混合部署、存储计算分离试水;2018年基地型数据中心、大规模混合部署、存储计算分离全面落地,初步实现datacenter as a computer。
全链路压测和异地多活讲的比较多了,今天重点介绍下容器化、统一调度、混合云弹性架构、混合部署、存储计算分离等技术,如何全面降低大促成本。
每年双11只有一天,如上图所示双11双12的峰值是日常峰值的几十倍、十几倍,为了准备双11当天峰值容量要采购大量资源,数倍于平时,大促过后资源利用率不高,通过搬迁、腾挪、拆借去满足集团各种各样的其他活动,资源整体弹性能力不足,会形成较长时间的低效运行期,成本浪费较大;运维体系差异大,资源调度不统一,各版块无法平滑复用,每个业务版块有不同的Buffer池子,在线率、分配率、利用率无法统一,机型需求也比较庞杂。
这种支撑模式难以为继,同时阿里云技术发展很快体量较大,具备很大的资源弹性能力,所以在2015年我们发起了云化架构项目,希望用电商Zeus调度打通阿里云平台的资源弹性能力,在云平台上快速搭建临时交易单元站点,构建混合云弹性架构,去支撑快速增长的交易峰值,降低大促成本,这里面有大量技术细节和创新,先不展开。
大促资源成本 = 资源持有时间 * 资源持有规模
通过统一调度云化架构优化,2016年双11万笔交易新增成本比2015年下降50%,2018年双11万笔交易新增成本比2016年又下降50%,可见资源持有时间从全年变为弹性持有优化效果最明显,也可以看到我们做的一键建站和压测轮次优化节省时间意义重大,省时间省人不光提升效率还能带来省成本的效果。整个3年时间通过基础技术优化,万笔交易新增成本下降为原来的1/4,这也是为什么我们能够支撑这么高速的交易峰值增长的原因之一。
为了看懂这张图,先了解几个公式:
交易日常容量 = 交易峰值容量 - 弹性容量合计
弹性容量合计 = 混合云 + 混合部署 + 调度优化
我们的成本优化方向是:日常保持较小交易容量,大促时找到很多低成本弹性容量支撑临时峰值。
弹性容量合计做得越高,越趋近交易峰值容量,交易日常容量越低,资源长期持有成本越低;弹性容量合计中免费的资源越多,大促交易新增成本则越低;对于有成本的大促增量部分,如混合云弹性架构,降低成本,有两种方式:缩小持有规模或者缩短持有时间,近几年每年在一键建站上的效率优化都在50%以上,全链路压测轮次和周期也会影响混合云资源持有时间,这里也还有很大优化空间,所以效率和成本是可以产生直接关系的,当然云的售卖速度一直在上升,buffer未来足以支撑集团大促空缺需求;对于无成本的大促增量部分,加大持有规模,减少持有时间(尽量保证不影响共享资源的业务)。
为了增加免费大促资源,我们联合多个兄弟BU从16年开始储备预演,进行小规模验证,17年混合部署支撑大促4万笔交易,并在18年有3倍的规模提升;从17年开始储备Sigma弹性和分时复用技术,在18年会有8万笔大促容量的优化落地。基础技术的演进落地都需要较长的准备周期,要提前两到三年布局。为了统一调度必须要先统一运行时,我们从15年年中开始启动容器建设,年底完成和T4功能对齐,16年5月正式启动全网容器化,当年100%的双11交易流量都跑在了容器上。17年双11前,完成核心电商应用100%容器化,应用数量破万,容器规模达到百万级。18年开始了离线计算任务Pouch容器化的尝试。
所谓的统一调度云化架构到底是什么呢,可以参考上图。集团是一朵云,阿里云是一朵云,需要的时候可以打通构建混合云。集团的Sigma调度双11时会通过OpenAPI批量申请Houyi管理的ECS资源,通过VPC进行公共云网络隔离,在大规格ECS上进行运行时Pouch容器分配和托管,通过一键建站部署交易单元,用最简洁高效的形式上云;在集团内部,逐层重构升级,弹性复用资源,全局统一调度,使技术全面云化,得以把在线服务和计算任务混合部署,通过Sigma和Fuxi调度打通,日常时将离线计算任务引入在线集群,大促时将在线服务引入离线集群,大幅优化成本。
在混部实施中,技术挑战巨大,由于在线服务与计算任务对机型要求有较大的差别,通过存储计算分离技术(盘古存储),把资源分为计算节点和存储节点两大类,抹平了异构机型带来的差异性。在资源隔离技术方面,从服务器的内核层面,对 CPU、内存、IO、网络等多方面进行优先级的划分,做到对相关任务的毫秒级自适性调度或限制;通过运行干扰检测和资源画像调度优化,以保证高优先级的任务少受影响。混部调度和运维体系的打通、兼容和升级本身也花费了很大精力。
统一调度把多个数据中心像一台计算机一样来管理,可以跨多个不同的平台来调度业务发展所需的资源,构建混合集群以极低成本拿到服务器,先解决有没有的问题,通过弹性分时复用和混部大幅提升资源利用率,解决用得好不好的问题;真正实现弹性资源平滑复用、任务灵活混合部署,用最少服务器、最短时间、最优效率完成容量目标,做到datacenter as a computer。混合部署不但支撑了大促,还可以通过任务调度使得日常在线服务器CPU利用率超过45%,使得日常IT成本下降30%的优化,带来统一调度和云化架构领域的技术价值爆发。
这也说明容器、编排调度、集群管理等云原生技术最近几年的流行是行业发展的必然趋势,是云计算时代一股不可忽视的力量,运维层这一部分的行业价值还远远没有被释放,未来阿里集团储备的这些有竞争力的技术都可以在云上赋能行业客户,并推动行业技术标准化的发展。
从2015年到2018年,双11新增万笔交易成本已经下降为原来的1/4,随着交易峰值的不断高速增长,统一调度这个技术方向与多个BU的通力合作,几年累计带来大促直接&间接成本节约效益巨大,释放了规模化效应下的技术红利。
随着阿里继续在统一调度云化架构混合部署等技术方向的深耕,未来大促新增资源成本有望做到零增加,值得挑战值得期待。
你可能还喜欢
点击下方图片即可阅读
阿里数据库十年变迁:
那些你不知道的二三事
双11大队长霜波:
从手忙脚乱到胸有成竹,我们如何走过这十年?
关注「阿里技术」
把握前沿技术脉搏
从步履蹒跚到举重若轻,阿里基础架构如何扛住全球最猛的流量洪峰?相关推荐
- 揭秘 | 连续3年支撑双11,阿里云神龙如何扛住全球流量洪峰?
简介:2019年云栖大会,阿里云正式发布第三代自研神龙架构,全面支持ECS虚拟机.裸金属.云原生容器等,贯穿整个IaaS计算平台,并在IOPS.PPS等方面提升5倍性能,用户能在云上获得物理机100% ...
- 高可用架构设计之道,实战案例直面流量洪峰
流量洪峰所带来的一系列挑战,足以激发每位程序员的斗志:高并发.大吞吐.紧急扩容.降级保护--那么,作为程序员,应该如何应对? 由腾讯云官方社区-云加社区举办的线上直播活动,主题聚焦在「高可用架构之流量 ...
- 阿里P9架构师讲解从单机至亿级流量大型网站系统架构的演进过程
阶段一.单机构建网站 网站的初期,我们经常会在单机上跑我们所有的程序和软件.此时我们使用一个容器,如tomcat.jetty.jboos,然后直接使用JSP/servlet技术,或者使用一些开源的框架 ...
- 阿里P9架构师简述从单机至亿级流量大型网站系统架构的演进过程
阶段一.单机构建网站 网站的初期,我们经常会在单机上跑我们所有的程序和软件.此时我们使用一个容器,如tomcat.jetty.jboos,然后直接使用JSP/servlet技术,或者使用一些开源的框架 ...
- 阿里无线11.11 | 手机淘宝移动端接入网关基础架构演进之路
移动网络优化是超级App永恒的话题,对于无线电商来说更为重要,网络请求体验跟用户的购买行为息息相关,手机淘宝从过去的HTTP API网关,到2014年升级支持SPDY,2015年双十一自研高性能.全双 ...
- 手机淘宝移动端接入网关基础架构演进之路
http://www.infoq.com/cn/articles/taobao-mobile-terminal-access-gateway-infrastructure 移动网络优化是超级App永恒 ...
- 阿里云基本概念与基础架构(一)
阿里云基本概念与基础架构 文章目录 阿里云基本概念与基础架构 1.云的基本介绍 1.1.什么是云平台 1.2.云平台的分类 1.3.为什么使用云平台 2.阿里云基础架构 2.1.云平台有那些厂商 2. ...
- 从普通JAVA程序员到阿里P8架构师,他用了六年
工作年限:8 年服务公司:4 家(含四大门户中的两家)最近职业:Java 架构师职场关键词:社交平台.高并发系统架构设计.技术团队管理.多款从零到一的产品城市! 六年间,这位职人呆过四大门户中的两家, ...
- 游戏引擎架构第二版中文pdf_阿里架构有多牛,一文带你看遍阿里技术架构!
阿里的架构能力自不用多言.本期1C9U就带大家实际看看阿里的架构大牛们的精彩分享. 互联网架构 16:20 - 17:10 黄贵 - 阿里新一代分布式数据库X-DB技术剖析.pdf 互联网架构 10: ...
- 阿里P8架构师谈:从单体架构、到SOA、再到微服务的架构设计详解
本文涉及的内容以及知识点如下: 1.单体架构 2.单体架构的拆分 3.SOA与微服务的区别 4.微服务的优缺点 5.微服务的消息 6.服务集成 7.数据的去中心化 单体架构 Web应用程序发展的早期, ...
最新文章
- 潘云鹤院士:AI2.0和工业经济发展智能化
- 批量将中文单个字音频转为图像(二维矩阵)
- BZOJ-2001-city城市建设-HNOI2010-CDQ分治
- 百度之星2019 初赛一 题解
- C#中的bitmap类和图像像素值获取方法
- 离散信号的抽取和内插例题_《数字信号处理》学习指导与题解 2011年版
- 联想sr950配置raid卡_联想ThinkServerrd服务器raid卡设置教程LSIiraid卡设置教程
- 顶会ICML 2021杰出论文奖空降!
- vip forum.php,DZ论坛突破VIP回复查看内容
- 分立元器件——电感器
- 本地Remix与私链节点相连
- docker官方文档翻译5
- Python CSV简介
- pinia报错, getActivePinia was called with no active Pinia. Did you forget to install pinia?
- Sinkhorn算法
- 鸿蒙系统4月24日升级哪几款手机,大器晚成!鸿蒙系统或4月24号推送更新,你的机型在内吗?...
- 18年研赛数学建模心得
- linux学习笔记(6)磁盘管理
- 90%的 CTO 都做不好绩效管理
- 编程中的心流模式flow