乐趣区

关于ab测试:从飞书妙记秒开率提升看火山引擎AB测试在研发场景的应用

作者:DataTester 用户体验是决定互联网产品是否短暂生存的要害,每一个基于产品性能、应用和外观的渺小体验,都将极大地影响用户留存和满意度。对于企业合作平台飞书而言,用户体验旅程从关上产品页面的一瞬间就已开始,这里有一个非常重要的指标——页面秒开率,秒开率是指页面在一秒之内关上的比率。飞书为了晋升用户体验,对其各项性能的秒开率优化下了大功夫,通过利用火山引擎 A / B 测试(DataTester)进行严格的变量管制,落地精准的试验后果,帮忙研发团队佐证并明确了秒开率优化计划的收益。

影响秒开率其实有很多种因素,如代码冗余,插件连累…… 在其中,有一项重要的影响因素是“类加载”。类加载是指当页面被关上时,背地是调用的多个元素的代码,它们会经验验证、筹备、解析、初始化等环节后,能力被应用,这个流程是比拟消耗工夫的。

以飞书的一项性能“飞书妙记”加载为例,当飞书整体进行冷启动时,如果用户是首次关上飞书妙记界面,就会随同着靠近 1600 个类的大量加载,这对页面启动速度有着不可漠视的影响。如何缩小如此高的类加载数量对秒开率的影响呢?飞书团队心愿尝试采纳的计划是:接入 SnapBoost 计划。SnapBoost 计划的思路是让 app 可能提前对页面应用到的 ” 类 ” 进行加载,艰深来说,也就是在用户关上页面之前,将耗时较长的局部提前进行加载,当用户在关上页面的时候,这些代码省去了编译和解析的工夫,能够间接执行,使秒开率失去晋升。那么 SnapBoost 计划是否能无效升高“飞书妙记”的加载工夫呢?飞书团队采纳了火山引擎 A / B 测试(DataTester)进行计划可行性的重要验证。本次 A / B 试验三大指标:类加载数量 Activity 切换耗时:Activity 通常指一个独自的屏幕(页面),此指标指在不同页面之间的切换耗时。可感知耗时:指用户操作相干动作 (点击播放、滑动卡片等) 到首帧渲染进去感知到的耗时。优化前后收益验证:

火山引擎 DataTester 的试验后果,对 SnapBoost 计划的晋升性能假如给予了强有力的佐证,通过 SnapBoost 计划等一系列优化,飞书妙记的秒开率能够达成 37% 的优化晋升,目前该计划曾经胜利地进行了全量上线。“DataTester 是联合 A / B 测试方法论最好的一个工具。”飞书的研发成员在采访时讲到,在性能优化的 A / B 试验上,DataTester 能提供更加严格的变量管制和更加智能化的试验模式,业务能够便捷地取得有说服力的试验后果。企业研发场景如何利用 A / B 测试飞书的案例是一个 A / B 试验利用在研发场景的典型例子。市场对于惯例 A / B 测试的惯例印象是“产品优化的利器”,如产品页面 UI 优化、产品策略优化等;但区别于惯例印象,火山引擎 A / B 测试 DataTester 也可利用在多种研发场景中,包含算法优化、性能优化、模型优化、灰度公布场景等。DataTester 提供了丰盛的研发场景模板,依靠深刻业务打磨的扎实的产品能力,能够帮忙企业晋升研发层面的效率和决策准确率。算法优化各类算法优化是 DataTester 利用场景最频繁的中央之一,算法开发人员能够通过 A / B 测试来验证新的算法或者算法优化是否能够晋升对应业务指标。抖音的举荐算法、广告算法、千人千面等设置,无一不是经验了 DataTester 的多轮验证。而包含举荐、搜寻、精准广告、精细化经营等波及到算法的产品和业务也都能够利用 A / B 测试技术。性能优化在产品演进与迭代的过程中,经常会呈现因为倒退迅速导致的历史遗留问题减轻。如代码冗余、分支版本多难保护等状况,产品须要对代码进行清理,对产品组件进行优化,火山引擎 DataTester 可能帮忙验证产品性能优化的后果,防止在优化过程中呈现 bug 导致产品产生重大负面影响。此外,对于一些影响用户体验的场景,例如观看视频、播放歌曲时的疾速加载,这种性能优化的场景在 DataTester 中也提供了相应的利用模板,业务能够疾速上线多种策略并查看其对要害性能指标的影响。服务迭代当一些服务前端代码须要进行迭代时,会面临一旦呈现问题,对用户范畴影响较广的危险。此时也可通过火山引擎 DataTester 去验证服务的稳定性。例如抖音电商要对商家后盾进行降级,革新次要波及的是多个商家平台根底的接口,他们首先会抉择接入 DataTester,用 A / B 测试来试验接口变动后对产品稳定性的影响。灰度公布当产品有新性能上线后,如果线上服务一旦呈现问题,须要做到及时回滚,DataTester 的智能公布能力适配这一场景。产品在新性能上线呈现问题需回滚时,只需利用 DataTester 智能公布能力或敞开试验,或敞开服务端的 TCC 开关,就能将所有流量立刻回滚到旧的服务上,保障灰度公布场景下呈现问题时的用户体验。

火山引擎 A / B 测试外围模块介绍扎实的试验能力背地,是因为有齐备产品架构撑持。火山引擎 DataTester 作为一站式全栈多场景试验平台,产品构造纵深丰盛,并能够基于先进的底层算法,提供迷信分流能力和智能的统计引擎。DataTester 产品整体分为 5 层构造:

在应用层,DataTester 服务的行业十分宽泛,除了互联网行业之外,还包含金融、消费品、批发行业、汽车行业,以及泛互联网行业中的细分子畛域。这些畛域有很多工作场景都可采纳 A / B 测试提效,如广告优化、落地页营销优化和用户推送优化、画布触达优化等试验。
在接入层和会话层,通过 DataTester 的分流服务能聚合业务的多种线上触点,包含但不限于服务端、客户端、小程序及广告投放平台触点的接入。

中间层是 DataTester 最重要的性能层,这里能够划分为三大模块:模块一是试验治理相干模块,包含试验管控,涵盖试验从设计到公布的全流程,也包含试验的报告及其中丰盛的数据分析性能,以及相干的试验的工具,这一模块是 DataTester 最根底的局部。模块二是智能公布(Feature Flag),A/ B 测试如何失效不同的策略,如何智能化实现试验的配置、失效和公布,均由这一模块实现。模块三是 A / B 测试场景化的利用,DataTester 提供了多样化的试验形式和试验模板。最初的数据层,DataTester 除了 SDK 的采集之外,还反对数据集成的能力,能够集成的数据包含但不仅限于有客户端的用户行为、服务端的埋点,还有业务的第三方平台数据亦可反对。同时 DataTester 也会产出用户进组的信息,来将业务数据和用户进组数据链接在一起,不便 A / B 试验的开启。火山引擎 DataTester 起源于字节跳动外部的数智实际,在字节外部曾经服务了 500 多条业务线,10 余年间在字节跳动开启的试验总量已超过 150 万次。同时,DataTester 现已服务了美的、失去、凯叔讲故事等在内的上百家内部企业,反对了多个行业、多种业务场景的需要,为业务的运行、转化、增长等各环节提供了迷信的决策依据,将成熟的“数据驱动增长”教训赋能给各行业。

退出移动版