12月12日,“抖音商城双12好物节”正式完毕。据了解,双12期间,抖音电商推出了超值购、秒杀等多个优价频道和多个类目的主题榜单,让有消费需求的用户更高效地发现高性价比好物。除了货架场景,“抖音商城双12好物节”还发力重点达人直播间、好物直播间等内容场域,通过电商优质内容为商家和达人创造生意增量。
“抖音商城双12好物节”的背面是大流量、高并发对根底技能提出的应战,确保大促期间渠道的平稳运转、用户流畅的购物体会尤为重要。在经受了双十一海量流量检测的根底上,火山引擎CDN/DCDN和GA作为抖音静态/动态/长衔接事务流量进口,确保了大促期间抖音电商渠道的平稳运转。
下图为抖音客户端视频事务/动态接口/长衔接事务首要流量架构图,客户恳求通过火山引擎内容分发网络(CDN)、全站加快(DCDN)、全球加快(GA)回源到中心网关,转发到对应的事务服务。
01技能架构
火山引擎CDN/DCDN和GA运用丰厚的网络资源,依托边际云全球网络(含到首要地区的合规专线)下降网络抖动、时延和丢包,明显提高传输功率,结合自研的传输优化、智能缓存、动态路由、安全防护等才能,为用户供给安全、稳定的一站式加快服务,提高用户拜访体会。
- 火山引擎内容分发网络产品 CDN (Content Delivery Network)供给稳定、弹性、高功能的全球内容分发服务。
- 火山引擎全站加快产品 DCDN(Dynamic Content Delivery Network) 是一款在 CDN 静态内容加快服务的根底上,供给纯动态及动静态混合内容加快的服务。
- 火山引擎全球加快产品 GA(Global Accelerator)是一款完成全球范围网络就近接入和跨地域布置的四层网络加快服务。
火山引擎CDN/DCDN/GA资源散布
火山引擎CDN/DCDN/GA通过抖音集团事务和规划化ToB事务的打磨,已经形成了一套齐备且具有规划商业化才能的系统。
-
资源散布: 全球2500 加快节点,国内完成三大运营商本省覆盖,海外覆盖了首要国家和地区;
-
丰厚协议: 支撑HTTP(S)、QUIC、WebSocket、TCP、UDP协议接入;
-
智能调度: 确保客户就近接入,完成大规划QPS的全网调度;
-
智能路由: 自研智能路由系统,确保恳求最优途径回源,提高用户体会;
-
传输优化: 通过协议优化、回源预建连、公网路由择优等战略,提高动态API、上传、下载等各个场景的传输速度;
-
安全防护: 支撑大容量的 DDoS 防护、CC 防护、Web 漏洞防护,全链路 HTTPS (支撑国密协议),确保数据传输安全;
-
稳定性: 通过大规划QPS的验证,稳定性通过充沛验证,经历了抖音春晚红包、抖音世界杯直播、抖音电商双十一等大型活动检测。
火山引擎CDN/DCDN/GA网络拓扑
02处理方案
火山引擎CDN/DCDN/GA作为抖音事务动静态流量进口,在双12期间,不仅要承载常态流量,还需求应对大促带来的洪峰流量冲击,这对火山引擎CDN/DCDN/GA的容量、调度才能、容灾才能都提出了更高的要求。对此,本文从5个方面介绍应对双12突发流量时火山引擎CDN/DCDN/GA供给的处理方案。
动态扩容
为了处理大促顶峰时刻段的资源缺乏问题,火山引擎CDN/DCDN/GA选用动态扩容技能。双12带来的流量是脉冲式流量,持续时刻短,峰值高。尽管火山引擎CDN/DCDN/GA常态下会保存必定的流量冗余,但依然无法应对大促带来的突发流量。假如想要通过短时刻内完结很多边际节点扩容来处理这一问题,不仅操作难度极大,而且仅为活动进行大规划扩容,也会形成资源浪费。因而,怎么动态扩容以应对短时刻洪峰流量,是火山引擎CDN/DCDN/GA产品在双12遇到的首要应战之一。
火山引擎CDN/DCDN/GA运用火山引擎边际云共同技能底座,首要流量运转在边际云容器/虚拟机上。因而可以在活动正式开端前,充沛运用边际容器渠道的弹性才能,快速创建出一批新资源,完结资源动态扩容,满意活动期间的容量需求。在活动完毕后,将扩容资源开释,完成全体容量的快速扩缩。
流量调度
为了应对突发流量,火山引擎CDN/DCDN/GA引进“活动”流量模型。常态下,火山引擎CDN/DCDN/GA会依据事务实时以及最近几天的QPS/带宽/衔接数进行调度,但面临双12带来的突发流量,这种调度模式显着无法适应。
为处理这个问题,火山引擎引进了“活动”流量模型。假设活动期间各个地区的流量散布与常态流量共同,依据事务预估的总QPS/带宽/衔接数,按比例分配到不同地区。在进行调度时,将预估的活动流量一并纳入考虑,因而调度后的节点可以承载活动突发流量。同时会依据前一天的流量值修正下一次活动流量模型。
引进“活动”的流量模型
自保才能
为了应对容量危险,火山引擎CDN/DCDN/GA具有熔断才能完成自保。资源和调度已具有应对预估峰值的才能,但事务预估流量跟实在流量很或许存在误差。假如事务预估比实在流量低,突发流量很有或许超出CDN/DCDN/GA服务上限,当呈现短时刻的可用性下降、恳求耗时增加后,会触发客户端不断重试,进一步加剧服务压力,极有或许形成线上全体的雪崩,影响产品恳求。
因而,为了应对极点场景的危险,CDN/DCDN/GA需具有熔断才能,当恳求量抵达必定阈值后,通过熔断下降系统压力,确保线上首要事务流量的稳定性。
活动期间,首要有以下容量危险:
- CPU资源危险: 很多客户端冷启,新建衔接(CPS)突增,抖音支撑全链路HTTPs,因而冷启客户端会进行很多的SSL握手,耗费DCDN节点很多CPU资源;
- QPS突增危险: 电商API接口恳求量(QPS)突增,超越CDN/DCDN/GA处理才能上限,形成服务溃散;
- 恳求堆积危险: 跟着QPS突增,活动事务后端服务压力增加,响应耗时变大,形成很多恳求堆积,拖垮CDN/DCDN/GA和事务服务。
为了应对上述危险,火山引擎CDN/DCDN/GA产品引进多维度熔断才能:
- CPS熔断才能: 针对最耗费CPU的SSL握手,支撑针对单域名和大局SSL握手限流才能,当单个域名的SSL流量超出阈值后,将回绝新SSL恳求,防止打爆CPU;
- QPS熔断才能: 当活动域名的QPS超越设定阈值后,拒掉新恳求,防止过多恳求回源,维护本身和源站服务;
- 回源熔断才能: 当单个域名同时回源的恳求抵达必定阈值后,新的回源恳求会在CDN/DCDN/GA直接熔断,响应反常码,防止事务服务响应变慢后,恳求堆积拖垮事务后端服务。
上述熔断才能,均支撑单域名和大局粒度。
-
单域名熔断 : 首要针对活动域名装备,防止活动域名突增影响大局流量。
-
大局熔断才能: 首要是维护DCDN服务,当超越DCDN服务才能上限后,熔断一部分流量,确保大部分流量可正常服务。
流量压测
具有资源、调度、熔断才能后,还需求在活动之前对上述功能进行验证。对此,火山引擎CDN/DCDN/GA与抖音客户端合作,进行全链路压测,运用实在的客户端恳求,模拟活动期间洪峰,验证全链路的处理才能。
流量压测曲线
加快功能
功能接入是加快产品最重要的衡量方针之一。怎么更好的提高功能,也是火山引擎CDN/DCDN/GA产品持续探索的方向,通过多年的打磨,沉积了经历,以下是火山引擎CDN/DCDN/GA产品在功能优化方面的首要战略。
智能调度
移动端用户通过4G/5G/WIFI无线网络拜访源站运用,信号不稳定,假如直连源站,RTT较长,按照干流的基于ACK反馈或超时来判别丢包的拥塞操控算法,需求很长时刻才能感知到丢包,再进行重传,导致时延非常大,假如通过更近的接入点上车,移动端和节点之间RTT更短,就可以更快感知到丢包,更快进行重传,下降时延。
火山引擎CDN/DCDN/GA自研的智能调度算法会基于用户散布状况,动态实时核算出接入质量更优的节点,例如在某城市,会依据用户散布的集中度,挑选离大多数用户更近的接入点上传,比较传统的DNS调度能更好的完成就近接入,提高用户体会。
智能路由
广域网网路存在杂乱的运营商和地域限制战略,经常呈现绕路、限速等状况。针对此问题,火山引擎自研的智能选路系统可在杂乱的广域网中实时挑选最优途径回源,确保事务的最佳体会。智能路由处理的是多方针途径规划问题,需求兼顾功能、容量等,重点是归一化方针函数规划。火山引擎CDN/DCDN/GA归纳考虑了链路质量、节点水位、亲缘性等方针,同时依据不同的事务场景(API、上传、下载等)选用不同权重值,确保各种事务场景按照最佳链路回源。
传输优化
- 协议栈优化: 回源链路选用火山引擎自研的TTCP协议栈,TTCP具有内核插件化才能,已在火山引擎CDN/DCDN/GA全网布置,支撑域名粒度操控,可依据事务场景(API、上传、下载)完成精准化的参数操控和自适应拥塞操控算法,确保最佳的拜访体会。同时TTCP完成了渠道化的管理,运用采集现网数据通过大数据实时分析决议计划动态的调整系统参数和拥塞操控算法,提高拜访体会。
- 衔接优化: 火山引擎CDN/DCDN/GA产品为提高拜访功能、下降中心服务的压力,采取了“预建连”优化手法。节点在没有实在恳求时,主动与源站建立一批衔接,维护在衔接池内,当突发事务恳求抵达,回源时可直接复用衔接,提高拜访功能。通过抖音集团内部事务测验显示,选用预衔接战略后,首包时刻耗时从115ms 下降到54ms,下降了53%以上,作用显着。
03运用案例
火山引擎DCDN承载了双十一期间抖音事务首要API流量,在双十一的洪峰应战中确保了用户最佳购物体会,功能、稳定性得到了充沛验证。通过客户端监测数据,火山引擎DCDN活动期间服务稳定,且加快功能抵达职业领先水平。
- 抖音短视频:抖音短视频核心Feed流API恳求通过敞开QUIC协议,选用智能路由、预建连等优化战略,网络耗时均值下降7%以上,长尾耗时下降17%以上,人均播放时长等核心事务收益明显正向。
- 抖音电商:结合边际高防调度以及边际WAF才能,处理API防护、 DDoS 和 CC 进犯、维护内容不被歹意爬取、劫持、篡改等,通过自研的传输优化、智能缓存、动态路由等技能供给了纯动态及动静态混合内容的加快服务,为用户供给更优质的拜访体会。
04展望未来
火山引擎CDN/DCDN/GA自上线以来,通过字节内部大规划QPS、亿级并发衔接数的验证,经历了双十一、春节活动、世界杯等大型活动检测,通过多年的打磨,功能、稳定性抵达业界领先水平,沉积了典型运用场景的加快处理方案。火山引擎DCDN和GA先后于2021年和2022年正式ToB,把服务抖音事务的技能堆集供给给更多的外部客户。
下一步,火山引擎CDN/DCDN/GA会继续进行深度优化,持续下降拜访时延,比如在加快网络内部运用基于UDP的私有协议,针对动态API、上传、下载场景运用愈加自助可控的丢包检测和拥塞操控算法,另外结合端上的才能,针对时延敏感性事务,比如游戏场景联动火山引擎游戏加快处理方案GNA支撑全链路的加快才能,敞开FEC、双通道、网络检测才能等,为用户供给极致性价比的加快服务。
关于火山引擎边际云: 火山引擎边际云,以云原生技能为根底底座,交融异构算力和边际网络,构建在大规划边际根底设施之上的云核算服务,形成以边际位置的核算、网络、存储、安全、智能为核心才能的新一代散布式云核算处理方案。