12月16日,vivo开发者大会圆满结束。在互联网技术会场,vivo的技术专家们介绍了在基础架构和效能提升层面的6个工具平台。
九层之台,起于累土。基础架构对于系统运行和业务开展的重要性不言而喻。会上,vivo推送平台系统架构师李青鑫和vivo存储技术团队研发总监肖博分别介绍了vivo的推送平台和数据库与存储服务平台。
实时双向推送 用技术助力运营
推送平台的核心能力是通过长连接将内容、服务、用户连在一起,为终端设备提供实时、双向通信能力。从产品的角度来看,推送平台能够帮助运营人员提升用户活跃和留存,帮助不同行业的开发者挖掘更多的运营价值。
自2015年立项以来,推送平台的业务量不断增长,系统能力也不断丰富,为解决过程中显露的各种挑战,平台架构已经历多次调整甚至重构,只为给用户提供更加丰富的产品功能及更稳定、更高性能的平台。
从推送平台的系统结构来看,vivo以通信服务作为核心能力,在此基础上还提供了大数据服务以及运营系统。李青鑫详细介绍了vivo在系统稳定性、高性能、安全方面的实践经验,包括过对网关和上下游的限流控速、提供标签推送这样的高性能服务,在面对突发流量时进行熔断降级以及平台提供的内容审核能力。在未来,vivo推送平台还将在数据一致性、容灾降级、易用性和异常流量四个方面持续投入建设。
一站式智能存储平台 为2.7亿用户提供业务支撑
数据库与存储平台是vivo自主研发的覆盖通用存储产品运维和研发需求的一站式智能存储平台。本次分享主要包括平台的建设背景,平台目前具备的能力以及在建设过程中一些思考和规划三部分。
该平台从架构上看主要分为两层,下层是通用的数据库和存储产品,包括数据库产品,存储服务,数据库中间件等产品,上层包含最基本的基础服务模块,数据服务模块、自治服务模块和安全模块四部分。
通过三年时间的建设,该平台有效的支撑了vivo数十款月活过亿的应用,为2.7亿(不含外销)在网手机用户的体验保驾护航。该平台将5万多数据库实例及4000多数据库和存储服务器进行统一的纳管,为研发和运维提供一站式的体验,有效的提升了运维研发效率。
肖博还介绍了vivo对于数据存储方向运维研发效率提升、数据安全管理、成本管控等方向的思考,在未来会持续完善存储产品矩阵,在SaaS服务、安全、自治、数据服务等方向不断提升能力,为用户提供更高的产品。
除了基础架构的建设,在这个“快鱼吃慢鱼”的时代,研发和迭代的效能对于软件项目的转化影响颇大。基于此,vivo自研并搭建了多个提升效能的产品工具,助力开发者们高效稳定迭代,把握转化先机。
360度展示平台 全链路提效前端可视化
随着web3D技术的不断发展,360度产品展示正越来越多的被使用。相较于普通的产品详情页,这种形式能带来更强的沉浸感和更多的细节卖点。然而,传统的开发方法并不简单,整个流程存在很多问题,比如联调繁琐、展示效果欠佳、功耗高等。在这样的背景下,vivo搭建了360度展示平台,为360度商品展示提供全链路的解决方案。
相比于原有方案,目前的平台具有很多优势,vivo用户运营前端专家苏宁从服务侧、编辑侧和展示侧对此做了全面介绍。首先,在整个产品展示的工作流中,全程不需要前端的参与,设计师自己一人就可以完成模型的编辑与调整,极大地解放了人力,提高了效率。其次,在成品效果上,因为对不同材质和Shader的优化,整体表现更加自然生动。最后,在性能方面,加载时间提升约30%,内存占用减少到之前的50%。
从零搭建马可平台 一键助力开发和测试
面对现在项目迭代周期短、需求变更频繁、系统复杂度高的特点,项目的迭代对开发和测试人员的挑战越来越大,迫切的需要一个能够方便看出代码改动和执行情况的平台,这个平台就是集成代码覆盖率平台。然而,由于数据合并难、数据失效等技术难点,市面上少有这样的产品。vivo攻克难关,从零开始,搭建了马可代码覆盖率平台。
vivo商城前端专家宋加超对马可平台的接入层、服务层和展示层做了详细的介绍,展示了马可平台的8个亮点,包括支持一键接入、增量报告、多种语言、多种工具、大盘监控、消息通知和平台独立。未来,马可平台会继续发展,一方面会丰富各端语言的接入,另一方面,也会整体打包开源,与开发者共建。
探索流量录制回放 解放人力回归测试
随着业务系统规模和复杂度的提高,业务系统会持续不断的迭代,在这个过程中,保证系统原有功能的重要性是一个重要问题。如果是不复杂的系统,可以通过编写测试脚本或者人工点检去验证,对于复杂的系统,回归测试将变成一项浩大的工程。
vivo平台产品系统架构师刘延江分享了vivo对于这一问题给出的答案。基于对业界方案的调研和参考,vivo选择了流量回放这一解决方案,也就是通过复制线上真实流量在测试环境进行回放来验证代码逻辑的正确性。新的方案简单、高效,能轻松上手,且接入时对业务系统无侵入,通用性扩展性好,能满足不同的业务诉求,未来也能应对系统架构的变更。
技术创新服务于业务,该平台已落地并在其他方面得到了应用。由于接入简单,初次接入十分钟内就可以完成,开发人员的使用积极性很高。该平台目前已接入200个业务系统,上线一年累计完成1万+次录制回放,使用频率高。通过该平台已累计发现数十个问题,有效减少了线上问题的发生率。平台还进行了流量压测、问题定位、安全分析方面的应用尝试。
从联运走向独立探索 vivo直播向多形式发力
vivo手机终端日活过亿,内容流量分发业务场景众多,加上5G的高速发展和疫情的双重背景,直播更是内容分发的一个重要方式。
自2019年立项以来,vivo直播从联运走向独立探索,目前已完成泛娱乐、互动、公司事件直播等多种形式的落地。vivo直播中台架构师李国林通过介绍在开发不同形式直播中遇到的技术难点以及对应的解决方案,详细地展示了vivo在提供一站式直播解决方案上所做的努力。
在业务能力方面,vivo直播已初步具有了信息存储、视频处理、内容识别等一些基础能力,同时,vivo基于这些能力进行SDK的封装,通过提供标准的SDK进行直播能力的分发和复用,方便业务方进行功能的集成。在内容产出和对外服务上,vivo在对自己的手机APP赋能的同时,也与第三方平台进行合作,既能丰富消费者的手机体验,也去做一些内容的分发和传播。
在之前的探索过程中,vivo从容处理了遇到的技术难点和问题。未来的日子里,在架构升级迭代和技术工具丰富完善的道路上,还有许多工作要做,新的挑战会不断涌现,相信vivo能和现在一样,不断交出优秀答卷。