2023年11月1日,vivo开发者大会在深圳成功举办。此次大会设有一个主会场和十个分会场。互联网技术会场由vivo互联网的八位技术专家,带来vivo在微服务、大数据、云计算、DevOps、活动中台、音视频等方面的技术实践成果与思考。
核心技术演进优化,助力行业快速发展
vivo微服务平台为全球60多个国家/地区的5亿+用户提供服务,其中vivo的万级微服务,覆盖全网机器规模十万级,每天高达8000亿次的RPC调用次数,峰值QPS达到千万级。
vivo互联网中间件平台负责人罗亮,在分享时介绍了大规模、海量业务的微服务架构具体实践过程。通过深度参与业务的微服务架构改造,形成了总计近30项架构能力矩阵,并且在构建微服务架构技术体系,为更好解决具体实践过程中碰到的问题与挑战,通过自研部分能力解决亿级用户规模下内部业务的功能需求及复杂问题,vivo坚持业务适用原则,走出了一条从“开源“到”开源+自研”的研发路径。并且在这个实践过程中输出了一套关于中间件组件的全生命周期管理策略,为业务升级和用户新需求做好保障。
万亿级数据爆发式进化,升级改造构建创新生态
针对数据稳定和数据价值领域,vivo互联网基础数据方向负责人刘开周从海量基础数据计算架构的应用角度,讲述在数据爆发式增长的时代,vivo的解决方案和未来的发展愿景。
vivo根据业务发展情况,多措并举,稳扎稳打,通过构建流批双活链路架构和支持多种组件配置化输出,引入异步请求框架,解决实时计算数百万并发性能问题,实现Redis批量动态扩容时秒级延时;构建动态微批计算架构,大幅降低维表和业务表数据量,动态自动计算分区数和合适的计算资源,采用Shuffle Hash Join方案,并优化Join底层结构,去掉分区排序,在批计算性能方面提升了60%以上。
全局布控形成资源互补,保障集群提升运维效率
“在线服务和离线任务构成了数据中心的运营。在混部之前,在线和离线都是独立部署,无法形成有效的资源互补,数据中心整体资源利用率不高。”vivo互联网容器架构师甘青,在混部技术的分享中,提到了在线和离线独立部署的问题。vivo混部平台实现了强大的混部调度、隔离能力,并构建了一套高效运维平台和可视化监控体系,让混部技术在保障服务SLO的前提下,极大地提高数据中心资源利用率。
vivo通过对技术的优化和迭代,将离线任务的资源需求开辟了一个崭新的道路,为大数据平台增效降本提供了新思路。而离线任务如何在混部集群利用好计算资源,则需要进一步攻克难题。vivo互联网大数据架构师黄荣杰,在讲解离线混部Spark on K8s 弹性调度的部分时,为大家进行了全面的讲解。在实践中,vivo采用了任务跑通跑顺、跑稳跑准、跑得智能的“三步走”策略,实现了离线混部技术可供调度任务近2万个,每天调度的次数超过4万次。在高峰期,能为离线任务额外增加2万核、50TB内存的计算资源。
自研低代码系统,让活动更简单、更高效
vivo互联网用户运营前端专家冯伟在讲解悟空系统的版块中,与在场观众分享了悟空系统的前台设计。悟空系统在2018年诞生,它通过SaaS+PaaS的模式,实现vivo生态内100%业务场景覆盖,通过提供平台服务,针对个性化需求使用全链路的开发工具,达到降本增效、全员复用的效果。而对于在不影响开发体验情况下,实现iframe预览区数据通信高性能,这一问题上,vivo仍旧发挥自身的自研实力,通过自研unirender加载方案和归一化数据存储,解决了 iframe数据通信方式单一且复杂的短板。
同时在新技术探索上,vivo一直致力于通过智能化手段提升活动运营效率,通过自研转换引擎实现三方页面转换能力,并支持自然语言快速搭建活动,极大降低了运营门槛。
现如今,简单、高效的平台决定了产出的质量。vivo互联网用户运营服务器专家姜野在现场讲解了智能活动中台的相关内容。悟空系统的中台为互动组件提供中台能力支撑,让活动形式更丰富、多变,而BCA模型的诞生,则让中台系统更加智能化。BCA,即用户行为、行为条件、用户行为满足条件后触发的动作(Behavior、Condition、Action),它的一个用户行为对应着多个条件和多个动作,而在BCA模型的基础之上,通过playmaker玩法编辑器,运用自研低代码系统生成动态活动定义,再进行渲染集中式配置,实现在运营层面的改变与更新,让悟空平台成为一个集可视化、组件化、一站式的综合运营平台,不仅让活动更简单,而且更有效。
“多快好省”,观看体验+刷新两不误
短视频的普及离不开技术跃进和移动互联网的普及,人们对短视频的诉求除了优质的内容之外,还对播放流畅度有着更高的期待。为提升观看过程中的流畅度,vivo上线了多项优化策略。vivo互联网音视频架构师蔡创业分享了vivo 短视频在体验优化环节的实践经验。在网络连接环节,vivo通过连接复用、保活、HTTPDNS等方式提升连接速度和成功率;在数据下载环节通过多线程分片下载的方式提升下载速度和成功率;通过预渲染的方式,实现了首帧的“零耗时”;为提升播放过程中的流畅度、同时兼顾到流量成本,vivo对预加载策略进行了积极的探索,包括固定大小预加载、动态预加载以及智能预加载。同时,还基于播放过程的拆解和策略的监控,上线了BI分层监控体系,从核心技术指标、播放优化策略、视频基础信息等维度进行了详细的监控。
由vivo 互联网音视频架构师马运杰,现场分享短视频成本优化的环节。就达成降本增效而言,通过拆解CDN成本的影响因素,确定以降低单价、极致压缩、利用率治理为突破方向。再这几个方向上,分别采用PCDN、自适应编码、建设利用率报表体系等技术手段,在兼顾播放体验的同时,完成播放成本降低的任务。
随着手机智能化的不断发展和创新迭代,研发技术的进步和智能化生态的形成离不开开发者坚持不懈的精进努力和不断创新。作为全球领先的科技企业,vivo始终坚守技术创新,积极构建核心竞争力,以用户需求为导向并携手开发者及业内伙伴,为实现互联网技术的持续升级和发展做出更大的贡献。