vivo 互联网平台产品研发团队- Yang Yang

本篇为《vivo 平台产品》系列文章的第1篇。主要描述在业务高速发展的背景下,vivo软件工程师通过系统平台化建设等手段,逐步解决软件复用,快速响应业务变化等棘手问题的过程。我们从中精选出内容审核平台、AB实验平台、版本发布平台等具备代表性的平台产品,为大家对平台化的经历进行详细的介绍。

一、平台化

1.1 业务现状

vivo的互联网业务起始于2011年,经过多年的发展,vivo互联网各核心应用的日活均已达到千万级以上,截至2022年vivo累计用户数已经达到了5亿。以应用商店、浏览器、视频、游戏中心、钱包、官网商城为代表,逐渐形成了以广告、分发、游戏为核心的互联网商业模式。

1.2 问题

当今大型互联网企业的业务类型非常广泛,多业务单元并行发展,业务的复杂度越来越高,企业内部也在不断的进行技术上的升级和业务上的调整,比如引入微服务架构和业务边界重新划分。微服务的演化导致耦合于业务系统内的公共能力难以复用。业务边界的重新划分往往伴随着组织架构的进一步细化,这样的细化会导致同一类问题的重复性解决,造成资源的浪费。因此如何抽离多业务线公共的能力,集中管控与演进,以避免重复的投入,快速支撑业务的迭代,成为企业内部急需解决的问题。

1.3 平台化

平台化的架构演进是业务发展到一定规模必然要面对的选择,其核心就是将某一领域问题从业务软件中解耦出来内聚为一个独立平台集中管控,并不断演化出标准与边界都逐渐清晰的平台生态,一站式的解决一类问题,在组织内部实现高效的复用,支撑业务快速迭代。

在过去几年,vivo互联网经历了体系化的技术建设,从各个团队单体烟囱到服务化,再到如今平台化,vivo逐渐形成了自己的一套平台生态体系(如图一)。在过程中我们也遇到了很多技术、组织等诸多方面的挑战。我们即将为读者带来一个专题文章系列——vivo平台化建设,本篇则为专题系列文章的启航篇。

二、优秀案例

经过多年的发展,vivo互联网在平台化建设上取得了非常显著的成效,已经完成多个平台产品的建设,并涵盖了多个业务领域。活动运营方面有悟空平台;质量管控方面有内容审核平台和监控平台;策略分析方面有版本发布平台和AB实验平台。本节主要从中选择一些优秀的平台化建设案例进行简单介绍,后面专题文章系列会对这些平台进行更加全面和深入的介绍。

2.1 内容审核平台

2.1.1 背景

2016年以前,vivo的互联网业务开展之初,与用户交互的各个系统(比如帐号、游戏论坛、官网社区)都建立了自己的敏感词过滤能力,实现简单的违规内容拦截功能,随着vivo互联网业务的迅速崛起,vivo生态的内容开始变的多样化起来,从最开始单一的文本内容到现在文本、图片、资讯、视频,内容发生了翻天覆地的变化。文本/资讯数据量大,违规场景复杂,非专业团队审核难度极大;图片场景多种多样,违规图片层出不穷,更是涉政涉黄重灾区;音视频/直播场景日益丰富,主播素质参差不齐,违规内容泛滥成灾,严重影响了品牌形象。

2.1.2 自研内容审核平台

原先vivo的内容主要是依赖第三方平台来进行审核,随着业务的快速发展,这样的模式已经不能满足vivo业务发展的需求,加之整个行业都在加大对内容审核的投入力度。为了更好的保证vivo内容的安全,让我们的用户获得更加极致的体验,同时为了提高系统能力的复用,vivo决定从零开始自研内容审核平台。

2.1.3 内容审核平台现状

vivo内容审核平台具备内容安全审核、内容质量识别、数据标注和舆情收集等能力。运用"机审+人审"双重保障的方式为业务的安全和质量保驾护航。机审能力主要包含AI判断、黑/白名单体系,敏感词体系,直播流实时监控机制以及前台举报机制,目前图文判断准确率达到98%,已达到业内领先水平。人工审核则配备具有相应专业知识和技能的专职人员几百名,7*24小时进行互联网信息的审核过滤,确保网络信息安全。

2.2  AB实验平台

2.2.1 背景

互联网企业经历过野蛮生长期之后,逐渐越发重视产品发展的科学化、精细化,从粗放型向集约型转换。在美国,增长黑客等数据驱动增长的方法论,正在帮助如Google、Microsoft、Facebook等全球科技巨头实现持续的业务增长;在国内,通过数据精细运营、AB实验分析来驱动业务有效增长也逐渐成为共识,成为企业存量数据运营的核心手段之一。其中,AB实验作为典型代表,自然成为了国内主流公司中必不可少的核心运营手段,有效的提升流量的转化效率和产研的迭代效率。

2.2.2 什么是AB实验

所谓AB实验,亦被称为"对照实验"或者"小流量随机实验"。为了验证一个新策略的效果,准备原策略A和新策略B两种方案。随后在总体用户中取出一小部分,将这部分用户完全随机地分在两个组中,使两组用户在统计角度无差别。将原策略A和新策略B分别展示给不同的用户组,一段时间后,结合统计方法分析数据,得到两种策略生效后指标的变化结果,并以此判断新策略B是否符合预期。

2.2.3 vivo  AB 实验平台

vivo互联网持续重视科学的实验决策,这意味着所有对用户的改动的发布,都要决策者以相应的实验结论作为依据。比如,修改顶部广告的背景色、测试一个新的广告点击率 (CTR) 预测算法,最终哪种方案被选择,都需要根据实验结果进行科学化的决策,那么一个强大的AB实验平台就越发重要了。在过去的几年,vivo互联网从烟囱林立的小实验系统,逐渐开始走上平台化建设之路——搭建、完善AB实验平台,AB实验平台已经从一个单一系统成长为了解决A/B实验相关问题的公司级一站式平台,助力互联网核心业务的快速、准确实验,高效推动业务增长。

2.3 版本发布平台

2.3.1 什么是版本发布

版本发布平台,顾名思义,主要用于发布手机APK版本。自从公司开发手机应用以来,系统升级对用户来说过于重度并且升级率偏低,而互联网兴起带起的快速迭代势头,让自升级能力成为了必不可少的能力之一。vivo版本发布平台最初就是以手机内的APK自升级为起点建设起来的,毫不夸张的说,有了vivo智能机就有了vivo版本发布平台。版本发布平台的主要业务可以简单的理解为:传版本、配规则、分发包。

2.3.2 业务范围

当然,随着手机业务的逐步扩展丰富,我们平台的范围、平台的控制粒度、平台的数据分析能力也越来越完善。

一方面,我们承接了“APK自升级”以外的很多升级能力,如各类组件、快应用、原子组件、SDK包、插件、SO库等等;另一方面,我们对下发规则做了更多兼容和细致的扩展,如量控量止、多维度正反交并差&分群、标识符分群、各种灰度策略、多语言、多渠道、全局规则、一键拦截、一键分析等等;此外,安全合规脱敏、降本增量算法、流控算法【愚公平台】、星云埋点质量分析、crash告警分析、发布趋势等也在vivo版本发布平台的附加价值之内。

2.3.3 业务目标

我们的目标是:为公司打造安全合规、智能稳定、提效降本、锐意创新的全链路发版平台。提供一流的使用体验,树立公司级平台产品口碑标杆。本次系列文章我们会着重介绍vivo版本发布平台在带宽智能优化这个领域中一些探索与实践,欢迎广大读者一起交流,探讨。

2.4 云服务

2.4.1 什么是云服务

vivo云服务,主要提供两项关键能力。首先是面向C端用户,vivo云服务为vivo手机用户提供了文件备份、数据同步等功能。这部分能力使用户能够方便的在本地和云端管理照片、视频、联系人、短信、便签等重要数据。另外,在vivo云服务的建设能力中,还包含了为vivo内部其他业务提供快速便捷的C端文件上传下载的能力。同时,我们在构建C端用户数据备份同步能力的同时,建设了自身的云服务平台,完善了平台相关的备份同步功能。此项平台功能使得vivo内其他兄弟业务,也能快速方便的使用云服务平台的能力进行自身业务C端用户的备份同步能力。

2.4.2 云服务与安全

众所周知,云服务业务需要为用户存放海量的数据文件,除了需要保证服务的稳定性之外,还特别需要关注数据的安全性,文件的持久性等等。可能不少读者也知道,曾经某些厂商的云服务曾经出现过用户数据泄露,居然可以通过搜索引擎直接查询到用户的私人文件,这种事件对于企业品牌的打击和影响非常巨大。在后续的文章中我们会为读者详细的介绍vivo云服务在软件设计上是如何兼顾产品功能、服务稳定性以及数据安全的。

2.4.3 云服务与降本增效

随着vivo手机用户数量的不断攀升,用户存储在云端的文件体量也越来越庞大,据统计,vivo云服务中云盘能力构建完成后短短三年,云端的文件存储总大小已经超过了百PB级别,增长速度可以说是非常迅速。那么随之而来的非常严峻的考验就是成本问题。我们如何能在保证用户体验不受影响的前提下控制成本?这是个困难且长期的现实问题,后续将给大家带来我们这边的解决方案。

2.5 积分

2.5.1 什么是积分

积分作为互联网内的一种存量用户运营的有效激励工具,承载了刺激用户活跃和留存的使命。作为积分体系,vivo积分主体同样是围绕获取与消耗展开,随之延申的业务能力包括:积分商城、礼品中心、签到中心、任务中心、活动中心。

2.5.2 积分生态

vivo积分贯穿整个vivo生态下的互联网应用,同时手机厂商互联网业务的独特性(不仅局限于单一类型业务)也造就了vivo积分的与其他行业生态积分体系的差异性,这些差异性着重体现在vivo积分是与各个业务形态紧密合作,相互渗透。通常积分的获取行业内都会基于任务来实现,而达成任务的完成基于特定行为完成来判断,最终完成积分发放,基于“福格模型”,我们可以发现促使用户完成某个行为的三要素:动机、条件、触发。这为任务的建设提供了理论支撑。

2.5.3 积分任务

任务作为积分获取最重要的途径,vivo生态内的应用接入积分任务,引导用户完成高价值行为任务,有助于其达成业务方核心KPI指标,同时用户因完成任务得到积分奖励,有持续产生高价值行为的动力,最终形成正向循环。那么vivo的任务体系是如何搭建的呢,系统建设又走过了哪些历程?在本次的系列文章中,我们将为大家揭开其神秘的面纱。

2.6 帐号

2.6.1 什么是帐号

对于我们的用户,vivo帐号是用户畅享整个vivo生态服务的通行证。vivo生态服务内容涵盖生活、游戏、娱乐等方方面面。同时作为手机厂商的帐号体系存在,需肩负起用户设备资产保护重任,保障用户的用机安全。对于我们服务的各个业务,帐号是最基础平台服务、是业务得以开展的基础保障。而vivo帐号也不止于服务于我们自身手机用户,在微信、ios等跨平台、多生态环境下都可以让用户享受到vivo帐号带来的便捷服务。

2.6.2 帐号全球化

伴随公司手机业务在海外市场的拓展,帐号已经在全球7大机房完成了跨洲部署,用于服务我们的全球用户。每个机房的服务都严格遵循服务地区的相关个人数据隐私和安全的法律、法规。且为了应对政策变更带来的风险,GDPR区域的服务具备动态国家数据隔离等能力。确保在外部环境因素干扰下继续保持一定服务能力。

2.6.3 稳定性建设

随着业务的快速发展,我们服务的用户数很早就破亿,服务的日均调用量更是突破了百亿。帐号已然成为一个典型三高(高性能、高并发、高可用)属性的系统,再加上基础平台服务的定位,大量工作都会围绕如何建设系统的稳定性展开。在本次的系列文章中,我们会和大家一起聊聊帐号系统在稳定性建设方面做出了哪些尝试与努力。

三、写在最后

本篇为vivo平台化建设系列文章的启航篇,旨在介绍vivo进行平台化道路的背景和平台化建设的价值以及一些成功的案例,抛砖引玉。后面的系列文章会深入的介绍vivo互联网的平台化产品的探索、建设与创新,结合过程中的具体实践,分享遇到问题及思考。希望能帮助读者了解到平台化建设的意义与方法、建设前的可行性评估及过程中应当避开的陷阱等等。

vivo进行平台化建设之后在软件复用、研发效率提升等方面有显著的提升,但是平台化也不是软件架构演进道路上的一颗银弹,能够包治百病。平台可能由于前期考虑的不够充分,亦或前期的业务模式较为单一,从而导致平台在未来可能难以满足业务需求的变化。不要指望当下设计的平台能够完全满足未来不可预知的变化。但是对于未来的不确定性,我们也不能坐以待毙,我们需要对未来业务的发展进行一定的预判,为未来预留扩展点。除此之外,还需要尽量的保证扩展点与当前系统是解耦的。平台化和业务多样性的矛盾会一直存在,只是在某个阶段这种矛盾可能暂时达到了平衡。

vivo平台化实践探索之旅-平台产品系列01相关推荐

  1. 美团外卖广告平台化的探索与实践

    随着美团外卖业务不断发展,外卖广告引擎团队在多个领域进行了工程上的探索和实践,目前已经取得了一些成果.我们计划通过连载的形式分享给大家,本文是<美团外卖广告工程实践>专题连载的第一篇. 本 ...

  2. 二十五、Flink + Uber AthenaX 平台化实践

    本篇介绍一下flink在我司的平台化实践,讲个大概,不能讲太详细. AthenaX介绍 uber AthenaX https://athenax.readthedocs.io/en/latest/, ...

  3. 京东零售大数据云原生平台化实践

    分享嘉宾:吴维伟 京东 架构工程师 编辑整理:陈妃君 深圳大学 出品社区:DataFun 导读:随着业务调整和集群资源整合需求,大数据系统中集群数据迁移复杂混乱.本文将以京东大数据平台为例,介绍京东近 ...

  4. winform 界面 xml化_FlinkSQL 1.11 on Zeppelin平台化实践

    大数据领域 SQL 化开发的风潮方兴未艾(所谓"Everybody knows SQL"),Flink 自然也不能"免俗".Flink SQL 是 Flink ...

  5. Flink SQL 1.11 on Zeppelin 平台化实践

    简介: 鉴于有很多企业都无法配备专门的团队来解决 Flink SQL 平台化的问题,那么到底有没有一个开源的.开箱即用的.功能相对完善的组件呢?答案就是本文的主角--Apache Zeppelin. ...

  6. 零代码技能平台技术实践探索

    导读:今天为大家介绍一下OPPO小布助手在对话系统技能平台建设中的落地实践,主要分为四个方面: 业务领域建模,建设通用能力地图 语义理解能力初探,多类型的场景支持 多模式易扩展流程化的对话管理 端到端 ...

  7. 网易游戏 Flink SQL 平台化实践

    摘要:本文整理自网易游戏资深开发工程师林小铂在 Flink Forward Asia 2021 平台建设专场的演讲.主要内容包括: 网易游戏 Flink SQL 发展历程 基于模板 jar 的 Str ...

  8. kylin如何支持flink_Kylin 在腾讯的平台化及 Flink 引擎实践

    △Meetup 现场视频 Kylin 平台化实践 首先,介绍下我们为什么进行平台化改造? 我们部门为公司内其他业务线提供了各种大数据平台,如 Kylin.HBase.Spark.Flink 等等,提供 ...

  9. 360大数据中心平台化的演进与实践

    本文根据徐皓老师在[2018 DAMS中国数据资产管理峰会]现场演讲内容整理而成. 讲师介绍 徐皓,奇虎360大数据中心技术总监.曾就职于华为,主要负责软件产品线平台相关研发工作,涉及中间件.云等相关 ...

最新文章

  1. NSUserDefaults删除整个plist文件
  2. java设计模式4--建造者模式(Builder)
  3. HTML5前端常见攻击方式案例讲解!
  4. 看门狗(Watch Dog)是嵌入式系统中一种常用的保证系统可靠性的技术,()会产生看门狗中断。【详细!小白也能看懂!】
  5. linux update语句,MySQL 多表 update sql语句总结
  6. 个人如何注册小程序账号,亲测有效!
  7. C# 委托和事件 (三)
  8. [LinqPad妙用]-在Net MVC中反射调用LinqPad中的Dump函数
  9. python通过get方法获取key对应的值
  10. visual studio code(vs code) 编译、运行、调试程序(调用g++)
  11. spring c3p0 mysql_spring boot整合mybatis使用c3p0数据源连接mysql
  12. SQLSERVER中使用函数去掉数据中的空格,批量删除数据中空格、换行符?,替换字段中字符串
  13. 【Mybatis】Mybatis三大组件之StatementHandler
  14. 痞子衡嵌入式:MCUXpresso Config Tools初体验(Pins, Clocks, Peripherals)
  15. 功率单位mw和dbm的换算总结
  16. 绿色奖学金申请答辩PPT模板
  17. 基因测序技术发展历史以及一、二、三代测序技术原理及应用
  18. 全球排名前500的网站都是做什么的
  19. Simulink模块介绍
  20. C语言初阶小练习(1)

热门文章

  1. 408-数据结构-树的应用-哈夫曼树并查集
  2. Linux基础命令---lpr 1
  3. OpenStack官方认证(COA)正式回归!
  4. GNSS导航电文模拟生成软件介绍
  5. 掌握 HTML 定位技巧,轻松打造精美网页布局
  6. Tailwind Background
  7. PTA基础编程题目集6-5
  8. RabbitMQ mandatory参数 路由器匹配不到队列返回响应
  9. python android自动化元素定位_appium+python android元素定位
  10. RPLIDAR A2 rviz显示雷达数据教程