腾讯二十年基础设施演进揭秘:巨头走过的路,点亮了后来者的灯

智东西(公众号:zhidxcom)
文 | 季瑜生

如果对行进中的中国互联网产业有些许的关注,那么你一定不会忘记在402天前,2018年9月30日,腾讯那场浩浩荡荡的变革。

那是腾讯二十年历史中第三次挥刀指向自我,而变革的中心所指正是如今正站在舞台中央的CSIG(云与智慧产业)事业群。一年多时间过去,CSIG到了交答案的时候了。

站在今天,2019年11月6日早晨举行的腾讯云首届Techo开发者大会舞台中央,腾讯公司副总裁、腾讯云总裁邱跃鹏最先回答了未来腾讯云去向何方的问题,他表示站在腾讯的角度看软硬件一体化、Serverless(无服务器)、智能化将是未来产业的发展方向。

而紧随邱跃鹏之后,腾讯云副总裁、云架构平台部总经理谢明则回答了腾讯过去二十年在基础方面的演进和创新,以及如今腾讯如今在云计算领域的全面技术部署与优势。

腾讯云副总裁、腾讯数据平台部总经理蒋杰博士则进一步披露了腾讯大数据平台这10年来从以Hadoop为基础做离线计算的整合到如今自主开发Angel分布式机器学习平台日接入数据量35万亿条的技术演进历程。

庞大的社交巨头如何转型成一家科技公司?

农场偷菜开始的云业务萌芽是如何发展成为腾讯的企业级战略?

经过二十年的累积与一年的变革,腾讯云又交出了怎样的答卷?

与此同时,以腾讯为代表,巨头们基础设施与技术一路发展而来所走过的历史,为后来者们又留下怎样的财富?

通过深度参与这场大会,并对谢明、蒋杰等腾讯云高管进行采访,我们试图在这场大会之中找到上面所有问题的答案。

一、邱跃鹏:软硬件一体化、Serverless、智能化是云计算三大趋势

作为第一届腾讯云Techo开发者大会的首位演讲者,邱跃鹏一开场就向所有人清晰的阐述了站在腾讯的角度,他们看到的未来云技术发展的三个趋势:

腾讯二十年基础设施演进揭秘:巨头走过的路,点亮了后来者的灯

首先是软硬一体化。随着云端所承载的业务规模越来越大,面向未来,更加高效的算力、更加低成本的存储一定是大势所趋,而在这一基础之上,硬件设计云原生也就是软硬件一体结合也成为了一个需要不断探索的方向。这对于开发者而言,可以为他们提供更坚实的基础设施平台以及更好的云计算性能并提高资源利用率。

第二个是Serverless(无服务器),作为一种新型的软件设计架构正在快速崛起。作为继虚拟机、容器后的第三代通用计算平台,Serverless技术也一直是腾讯云原生的重点发力领域。它可以将开发者从繁琐、冗杂的开发配置工作中解放出来,不需要任何的基础设施建设、管理与运维,极大降低了开发门槛,而只需关注自己的业务逻辑。

以腾讯云和微信联合推出的“小程序·云开发”为例,目前它实现了小程序开发的Serverless,上线一年至今,已经有超过了50万的开发者在使用。

此外,值得一提的是在Techo开发者大会上,腾讯云还宣布与全球最流行的Serverless开发平台Serverless.com达成战略合作,成为 Serverless.com的全球战略合作伙伴以及大中华区独家合作伙伴,双方将联手打造下一代无服务器计算开发平台——Serverless Cloud,该平台将覆盖从初始化、编码、调试、资源配置到部署发布,再到业务监控告警、故障排查的全生命周期。

智能化则是未来云技术发展的第三大趋势。当硬件的成本越来越低,红利不断被释放,开发者也就能够越来越关注于应用本身,数字化时代的进程也就随之加快。这一过程中,数字化带来了海量数据的增长,对于算力的要求变得前所未见,人工智能也成为了开发者们必须关注和应用的技术。未来,云厂商也将会提供更多人工智能产品和能力给到开发者。

最后,邱跃鹏表示,截至目前,腾讯云已经服务了数百万开发者,给到开发者的资源扶持超过100亿元。未来,腾讯云将秉承开源、分享、创新的理念,与开发者一起共建生态。

二、谢明:从使用通用产品到基于自研的极致弹性云时代,腾讯基础设施的二十年发展复盘

上场伊始,腾讯云副总裁、云架构平台部总经理谢明先向我们透露了这样一组数据:如今在腾讯的生态之中,QQ有8亿用户,微信的用户超过11亿,腾讯视频用户量超过1亿,腾讯游戏的用户数量也已经超过7亿。

腾讯二十年基础设施演进揭秘:巨头走过的路,点亮了后来者的灯

在会后的采访中,谢明也向我们开玩笑表示,事实上,腾讯自己才是腾讯云最大的客户。

因为,即使在腾讯内部对于基础设施的需求也是不尽相同的,这对于日后腾讯云的对外能力输出,提供了丰富的技术以及经验积累。

比如当年的农场偷菜,需要的是高写入低存储,是典型的高并发场景;无数人的青春回忆QQ相册则对存储的需求更加严格,如何降低存储成本成了当时的首要需求;而最近的国庆阅兵直播,腾讯视频加上腾讯云客户的国庆阅兵播放量大概在8000万左右,这种存在非常巨大的流量时间差异的波峰波谷情况则是一个偏接入的服务,为满足业务需求,腾讯选择自研CDN,并扛住了诸如国庆阅兵、LOL的S9直播等一系列重大时间节点的需求。

截止今年5月份,腾讯全网的服务器总量超过了100万台,已经成为国内首家超过一百万服务器的企业。

那么从服务自身到服务客户,腾讯云究竟在哪几个方面做出了哪些成绩呢?谢明从服务器平台演进、基础网络架构演进、数据中心演进、计算演进、存储演进、数据库演进六个维度进行了总结与复盘,并展望了在弹性计算、智能运营、智能服务等方面腾讯的发力方向。

服务器方面,从通用到自研是腾讯最主要的演进思路。在创业的最初腾讯使用的就是通用服务器,到了2007年,腾讯定制了首款Twins服务器,并制作了一个大规模上架管理系统,能够做到在一天内交付一千台服务器,帮腾讯抗住了业务的洪峰。到了云时代,客户对服务器的性能、成本、安全性有了更高的要求,于是腾讯就启动了自研服务器的进程。

前几天在成都,腾讯还发布了星星海服务器,它最大的特点是针对云端场景做深度优化,实现行业最优单核性能和最优单核TCO,包括实现云服务实例综合性能提升35%以上,最大负载能效对比业界可提高50%。

基础网络架构上,腾讯则经历了商业设备人工运维到商业设备工具建设到定制设备路由控制再到如今的自研设备软件定义阶段。

腾讯二十年基础设施演进揭秘:巨头走过的路,点亮了后来者的灯

如今,腾讯已经与超过100家运营商建立了网络互连,出口带宽也超过了100Tb。同时,腾讯还基于自研设备和SDN构建了第四代网络架构,在自研设备上,腾讯自研交换机、自研光网络能力达到业界顶级水平,通过自研,腾讯网络设备TCO下降20%

在今年7月份某运营商核心设备故障3个小时期间,腾讯网络3分钟切换出口恢复也正是得益于此,而类似的调度,及至今日,腾讯2019年已经累计完成了549次。

数据中心方面谢明表示腾讯的演进思路是高速化、规模化、集约化以及智能化。

在最新的第四代数据中心T-Block建设中,腾讯通过将IT、电力、空调的产品化,结合腾讯数据中心最佳模型及建设方法论,按照搭积木的方式,实现全数据中心的模块化配置及快速建设。

腾讯二十年基础设施演进揭秘:巨头走过的路,点亮了后来者的灯

相比于传统大规模数据中心,现场施工周期减少一半;同时,由于率先在行业内采用更高效率的制冷和供配电架构,系统能源使用效率得到有效提升。PUE降低至1.2。以一个拥有30万台服务器的园区为例,通过部署T-Block一年可节省2.5亿度电。

计算上,弹性计算已经成为大势所趋,存储和网络从计算实例解耦出来成了必然选择。如今,腾讯已经通过虚拟网络VPC和软件定义存储SDS做到了内外网IP随意漂移和云盘的灵活挂载,再结合虚拟机的热迁移技术,做到虚拟机在物理母机间的无感迁移,有效满足物理资源升级容错的需求。

腾讯云主机管控平台Vstation则做到了每分钟交付千台虚拟机的能力,中等规模公司的计算需求可以在腾讯云上得到快速满足。

存储方面,从当年的QQ相册开始,腾讯就开启了自研之路,并支撑起了数个爆款应用兴起的全过程。

早在2006年,腾讯两款国民级应用QQ空间及相册业务突然爆发,让当时的运营商的机位和带宽全线告急,在业务高峰期,当时的腾讯不得不采取限流措施。同时,为应对每天海量的图片上传需求,腾讯根据当时最前沿的分布式存储理念,迅速开发出腾讯分布式存储TFS,有效支持了Qzone相册每天亿级别的图片上传。

现如今,尽管机械硬盘容量从十年前的500G增长到了16TB,但每GB存储的IOPS能力却下降到了原来的3%。全新的云时代分布式存储成为新的时代需求,腾讯云对象存储引擎YottaStore应运而生,磁盘利用率达到90%以上,单集群理论可管理百万级节点,并大幅降低了运维的人工投入。

数据库方面,当年QQ空间的访问峰值一度达到百万/秒,对数据库的性能、成本和扩展性挑战非常大,也是自此,腾讯走上了自研数据库的道路。

首先在架构上,腾讯采用了基于share nothing的分布式计算存储分离架构,让计算、存储的无限扩展成为可能;其次,性能上,在单机上也尝试软硬结合优化;并且通过采用多级存储介质,达到最佳的性价比。

到了云时代,技术栈的需要更加立体。腾讯通过开源托管、商业合作、自研三线齐发,提供超过20种数据库产品,以及数据备份、SQL审计、数据管理、数据迁移等服务等生态工具,最终让用户获取最佳的上云体验。

而基于以上六大基础技术的发展,不难发现当前的云业务已经步入到一个极致弹性时代,其表现主要在以下三大方面:

腾讯二十年基础设施演进揭秘:巨头走过的路,点亮了后来者的灯

1、性能和容量能够做到实例规格的足够大、足够小,既能帮助大客户扛住业务洪峰,又能让小客户不浪费一分钱。

2、计费模式上,真正按照使用量来计费。

3、交付能力要秒升秒降,快上快下。

而基于弹性计算的理念,计算上,作为虚拟机、容器后的第三代通用计算平台,腾讯表示,其无服务函数计算平台可以做到资源使用率100%,成本则直降50%以上。通过使用自研的轻量级虚拟化技术,腾讯无服务函数计算平台还可以将启动时间缩短至90毫秒,并且使函数冷启动率降低到万分之一以内。

存储上,腾讯推出了可用性和可靠性更高的多AZ存储。让数据根据用户实际需求,灵活选择。

数据库方面,腾讯的CynosDB则基于计算存储解耦架构,通过存储池化、日志即数据库、可计算存储等技术,单实例可以达到百TB级别,资源利用率可到100%。

而面向未来,谢明则表示,云计算还需要结合更多的智能来提供更好的服务。

比如,通过智能视频和智能机器人实现智能运营;基于深度强化学习的云数据库自动性能优化系统来实现智能服务;以及数据的智能分层、计算的智能扩缩……这些都是未来需要不断发力的方向。

三、蒋杰:从0到日均35万亿数据采集,腾讯大数据平台10年技术演进

作为腾讯云副总裁、腾讯数据平台部总经理蒋杰则主要分享了腾讯在大数据以及AI方面的探索。

腾讯二十年基础设施演进揭秘:巨头走过的路,点亮了后来者的灯

依旧是一串数据,蒋杰表示,当前腾讯内部有超过100万台服务器,算力资源池中的规模为20万台,另外,腾讯每天有1500万的分析任务,30万亿次的实时计算量,每天35万亿条的数据采集量,分布式机器学习平台,能支撑1万亿维度的数据训练。

然而这一切在十年前,还都是一片空白。

从无到有,腾讯经历了最开始的以Hadoop为核心的离线计算时代,后来的以Spark、Storm、Flink为核心的实时计算时代,再到如今的机器学习和深度学习时代。在这一过程中,腾讯从无到有研发了分布式的机器学习引擎Angel,以及一站式AI开发平台智能钛TI。

在这一过程之中,腾讯主要解决了四大方面的困难以及挑战。

第一个挑战来自于如何实现在线、离线混部,管理十万级规模的资源池的问题。

十年前,腾讯管理几百个节点都很困难,调度性能差,规模上不去。在这之后,腾讯自研了调度器,相对于原生调度器,调度性能提升了150倍,大大提升了集群可扩展性。仅仅在2014年,单集群规模就已经达到8800台。

再后来,离线计算大规模集群的问题解决了,腾讯开始着眼于解决在线离线业务混合部署的问题。2017年前后,腾讯开始把在线系统和离线系统混合部署,错峰调度,将几十万甚至上百万的集群管理起来,形成一个统一的大池子,提升了整体资源利用率。

第二个挑战来自于数据接入,如何实时采集和处理每天数十万亿条数据?

腾讯的数据体量巨大是众所周知的情况,每天都上百PB、几十万亿条数据在产生,从2013年起短短5、6年,数据量就从百亿级增长到十万亿级,涨幅达到了几千倍。

腾讯二十年基础设施演进揭秘:巨头走过的路,点亮了后来者的灯

为了应对这种爆炸式增长,腾讯走了一条技术引进+改造+自研的道路。

从最开始用开源的kafka+storm来承载,到因为系统非常不稳定、丢包、数据重复、数据无法消费等问题而优化系统、重写storm,再到自研分布式消息中间件TubeMQ替换Kafka,这是腾讯的解决高数据量增长的主要途径。此外,在千亿到万亿再到十万亿的阶段,腾讯还为万兆网络以及内存存储重新设计了软件架构。

第三个挑战来自于跨IDC、跨集群、跨平台数据的高效分析。

腾讯拥有20万的弹性资源池,但是这些机器分布在多个不同地区甚至是不同国家的数据中心,客观上形成了数据孤岛或者数据烟囱。2018年,腾讯自研了漂移计算引擎SuperSQL,作为统一的数据分析入口,通过智能CBO优化器(基于成本的优化),将计算下推到分布在各地的异构数据源,数据分析性能提高很多倍,并且数据量越大优势越明显。

最后,如何搞定万亿维度的大模型数据训练?

2015年,腾讯自研了高性能的分布式机器学习平台Angel,采用PS的架构,能支持10亿维度。现在Angel已经发展到3.0,可以支撑万亿维度并兼容Spark、PyTorch、TensorFlow等多种生态,并在此前只能处理大模型的基础上,今年新增了对深度学习、图计算等支持。

将腾讯的这些能力与经验进一步沉淀,腾讯云成了对外赋能的主要窗口。当前,腾讯已经把网络、存储、数据库等IaaS能力,大数据、机器学习等PaaS的能力,以及上层的图像、语音、NLP、BI等SaaS能力,通过腾讯云对外开放。

腾讯二十年基础设施演进揭秘:巨头走过的路,点亮了后来者的灯

在大数据和AI两个领域,腾讯推出了以TBDS和智能钛TI为首的双引擎,让企业和数百万的开发者能够更便捷的使用大数据和AI的能力。

结语:从全面复盘历史到交出最新成绩,巨头们走过的路,为后来者点亮了前行的灯

不难发现,腾讯的基础设施成长之路是一个从自身业务需求为出发点,不断沉淀全方位的数据、技术能力,从局部优化到自主研发的过程。

而腾讯这二十年来的技术成长之路中的某个节点,以及他们所经历的苦难与重重挑战,或许也正是千千万万来自其他行业的企业当前所正在经历的,只是腾讯更大、跑的更快,问题也就最先遇到。

或许对比国内的其他竞争对手,腾讯并不算走的最快的一个,但却是走的最稳的一位。站在大变革一年后的时间节点,将这一路的经验的挑战深度复盘,是腾讯回顾历史对自我的总结,同时这也是将技术与经验沉淀借腾讯云对外输出的最佳案例。

或许全面上云,未来还需要多久,我们并不知道,但是我们知道的是,前路有人照亮,技术有人帮扶,选择上云的后来者们的路径无疑会比他们的前辈走的更加顺畅与快速。