更新A/B实验SDK的方法、设备和计算机可读存储介质技术

技术编号:29132901 阅读:17 留言:0更新日期:2021-07-02 22:28
本申请涉及计算机软件领域,提供了更新A/B实验SDK的方法、设备和计算机可读存储介质,以降低更新A/B测试SDK时各方的成本,所述方法包括:当A/B实验配置发生变化时,接收配置中心下发的A/B实验配置更新数据;解析A/B实验配置更新数据,确定当前流量所命中实验和对应于当前流量所命中实验的字节码文件的路径信息;根据当前流量所命中实验的字节码文件的路径信息,获取当前流量所命中实验的字节码文件;将当前流量所命中实验的字节码文件嵌入至集成于待A/B测试软件的A/B测试SDK,以完成对A/B测试SDK的更新。本申请的技术方案降低了更新A/B测试SDK时各方的成本。

【技术实现步骤摘要】
更新A/B实验SDK的方法、设备和计算机可读存储介质
本专利技术涉及计算机软件领域,特别涉及一种更新A/B实验SDK的方法、设备和计算机可读存储介质。
技术介绍
A/B测试(A/BTest)又称A/B实验,其基本原理是为Web(网页)或App(应用程序)的界面或流程制作两个(A/B)或多个(A/B/n)版本。在同一时间维度,分别让属性相同或相似的访客群组随机访问这些版本,收集各群组的用户体验数据和业务数据,最后分析评估出最佳版本正式采用。A/B测试离不开A/B测试软件开发工具箱(SoftwareDevelopmentKit,SDK),其主要实现A/B实验配置数据的解析、流量过滤和分组等功能。通常而言,A/B测试SDK会集成至待测试软件并结合A/B测试配置平台使用,因此,当待测试软件和/或A/B测试配置平台更新或升级时,A/B测试SDK需要同步更新或升级。然而,伴随着软件或互联网产品更新换代的加快,按照上述现有更新A/B实验SDK的方法,不仅待测试软件的商家必须频繁升级其A/B测试SDK,A/B测试配置平台也需要维护数量庞大、版本各异的A/B测试SDK。因此,无论对哪一方而言,现有更新A/B实验SDK的方法都会导致成本的高企。
技术实现思路
本申请提供一种更新A/B实验SDK的方法、装置、设备和计算机可读存储介质,以降低更新A/B测试SDK时各方的成本。一方面,本申请提供了一种更新A/B实验SDK的方法,包括:当A/B实验配置发生变化时,接收配置中心下发的A/B实验配置更新数据,所述配置中心连接于A/B测试配置平台,所述A/B测试配置平台用于对A/B实验配置进行编码形成所述A/B实验配置更新数据以及将对应于所述A/B实验配置更新数据的分流算法代码发送至字节码生成服务模块,以使所述字节码生成服务模块生成所述分流算法代码对应的字节码文件;解析所述A/B实验配置更新数据,确定当前流量所命中实验和对应于所述所命中实验的字节码文件的路径信息;根据所述所命中实验的字节码文件的路径信息,获取所述所命中实验的字节码文件;将所述所命中实验的字节码文件嵌入至集成于待A/B测试软件的A/B测试SDK,以完成对所述A/B测试SDK的更新。另一方面,本申请提供了一种更新A/B实验SDK的方法,包括:当A/B实验配置发生变化时,接收待A/B测试软件的开发商输入的A/B实验配置;对所述A/B实验配置进行编码形成A/B实验配置更新数据;将所述A/B实验配置更新数据发送至配置中心,以使集成于所述待A/B测试软件的A/B测试SDK从所述配置中心接收所述A/B实验配置更新数据并解析所述A/B实验配置更新数据,确定当前流量所命中实验和对应于所述所命中实验的字节码文件的路径信息;将对应于所述A/B实验配置更新数据的分流算法代码发送至字节码生成服务模块,以使所述字节码生成服务模块生成所述分流算法代码对应的字节码文件,所述待A/B测试软件的A/B测试SDK根据所述所命中实验的字节码文件的路径信息,获取所述所命中实验的字节码文件,将所述所命中实验的字节码文件嵌入至集成于待A/B测试软件的A/B测试SDK,以完成对所述A/B测试SDK的更新。第三方面,本申请提供了一种更新A/B实验SDK的装置,包括:第一接收模块,用于当A/B实验配置发生变化时,接收配置中心下发的A/B实验配置更新数据,所述配置中心连接于A/B测试配置平台,所述A/B测试配置平台用于对A/B实验配置进行编码形成所述A/B实验配置更新数据以及将对应于所述A/B实验配置更新数据的分流算法代码发送至字节码生成服务模块,以使所述字节码生成服务模块生成所述分流算法代码对应的字节码文件;解析模块,用于解析所述A/B实验配置更新数据,确定流量所命中实验和对应于所述所命中实验的字节码文件的路径信息;获取模块,用于根据所述所命中实验的字节码文件的路径信息,获取所述所命中实验的字节码文件;更新模块,用于将所述所命中实验的字节码文件嵌入至集成于待A/B测试软件的A/B测试SDK,以完成对所述A/B测试SDK的更新。第四方面,本申请提供了一种更新A/B实验SDK的装置,包括:第二接收模块,用于当A/B实验配置发生变化时,接收待A/B测试软件的开发商输入的A/B实验配置;编码模块,用于对所述A/B实验配置进行编码形成A/B实验配置更新数据;第一发送模块,用于将所述A/B实验配置更新数据发送至配置中心,以使集成于所述待A/B测试软件的A/B测试SDK从所述配置中心接收所述A/B实验配置更新数据并解析所述A/B实验配置更新数据,确定当前流量所命中实验和对应于所述所命中实验的字节码文件的路径信息;第二发送模块,用于将对应于所述A/B实验配置更新数据的分流算法代码发送至字节码生成服务模块,以使所述字节码生成服务模块生成所述分流算法代码对应的字节码文件,所述待A/B测试软件的A/B测试SDK根据所述所命中实验的字节码文件的路径信息,获取所述所命中实验的字节码文件,将所述所命中实验的字节码文件嵌入至集成于待A/B测试软件的A/B测试SDK,以完成对所述A/B测试SDK的更新。第五方面,本申请提供了一种设备,所述设备包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述更新A/B实验SDK的方法的技术方案的步骤。第六方面,本申请提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述更新A/B实验SDK的方法的技术方案的步骤。从上述本申请提供的技术方案可知,一方面,当A/B实验配置发生变化时,将对应于A/B实验配置更新数据的分流算法代码发送至字节码生成服务模块,由字节码生成服务模块生成分流算法代码对应的字节码文件,即,只需要待A/B测试软件的开发商在A/B测试配置平台进行A/B测试的配置,无需进行相应分流算法代码的编译、打包等发布新版本的常规操作,降低了待A/B测试软件的开发商的成本;另一方面,将所命中实验的字节码文件嵌入至集成于待A/B测试软件的A/B测试SDK即可完成对A/B测试SDK的更新,意味着A/B测试配置平台只需要维护一个A/B测试SDK的版本,既降低了待A/B测试软件的开发商的成本,又降低了A/B测试配置平台一方的成本;第三方面,将所命中实验的字节码文件嵌入至集成于待A/B测试软件的A/B测试SDK时,待A/B测试软件可以正在运行,因而不影响待A/B测试软件的开发商提供的服务,相当于是对A/B测试SDK进行动态更新,避免了现有技术因为升级A/B测试SDK而停运待A/B测试软件带来的损失。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下本文档来自技高网...

【技术保护点】
1.一种更新A/B实验SDK的方法,其特征在于,所述方法包括:/n当A/B实验配置发生变化时,接收配置中心下发的A/B实验配置更新数据,所述配置中心连接于A/B测试配置平台,所述A/B测试配置平台用于对A/B实验配置进行编码形成所述A/B实验配置更新数据以及将对应于所述A/B实验配置更新数据的分流算法代码发送至字节码生成服务模块,以使所述字节码生成服务模块生成所述分流算法代码对应的字节码文件;/n解析所述A/B实验配置更新数据,确定当前流量所命中实验和对应于所述所命中实验的字节码文件的路径信息;/n根据所述所命中实验的字节码文件的路径信息,获取所述所命中实验的字节码文件;/n将所述所命中实验的字节码文件嵌入至集成于待A/B测试软件的A/B测试SDK,以完成对所述A/B测试SDK的更新。/n

【技术特征摘要】
1.一种更新A/B实验SDK的方法,其特征在于,所述方法包括:
当A/B实验配置发生变化时,接收配置中心下发的A/B实验配置更新数据,所述配置中心连接于A/B测试配置平台,所述A/B测试配置平台用于对A/B实验配置进行编码形成所述A/B实验配置更新数据以及将对应于所述A/B实验配置更新数据的分流算法代码发送至字节码生成服务模块,以使所述字节码生成服务模块生成所述分流算法代码对应的字节码文件;
解析所述A/B实验配置更新数据,确定当前流量所命中实验和对应于所述所命中实验的字节码文件的路径信息;
根据所述所命中实验的字节码文件的路径信息,获取所述所命中实验的字节码文件;
将所述所命中实验的字节码文件嵌入至集成于待A/B测试软件的A/B测试SDK,以完成对所述A/B测试SDK的更新。


2.如权利要求1所述更新A/B实验SDK的方法,其特征在于,所述解析所述A/B实验配置更新数据,确定当前流量所命中实验和对应于所述所命中实验的字节码文件的路径信息,包括:
解析所述A/B实验配置更新数据,得到若干条数的流量属性标签配置和对应于所述若干条数的流量属性标签配置的一条字节码加载配置,所述字节码加载配置携带实验的标识和对应于所述实验的字节码文件的路径信息;
根据所述流量属性标签配置,创建与所述条数相等数目的流量过滤器;
使用与所述条数相等数目的流量过滤器中每一个流量过滤器对所述当前流量进行过滤;
若所述当前流量中的流量F通过全部所述数目的流量过滤器,则确定所述流量F命中所述标识对应的实验。


3.如权利要求2所述更新A/B实验SDK的方法,其特征在于,所述根据所述流量属性标签配置,创建与所述条数相等数目的流量过滤器,包括:按照每一条所述流量属性标签配置的属性标签,创建一个过滤规则与所述流量属性标签配置的属性标签相应的流量过滤器。


4.如权利要求3所述更新A/B实验SDK的方法,其特征在于,所述使用与所述条数相等数目的流量过滤器中的每一个流量过滤器对所述当前流量进行过滤,包括:
将所述当前流量的属性标签与所述每一个流量过滤器设置的属性标签对比;
若按照所述过滤规则,所述当前流量的属性标签与所述每一个流量过滤器的属性标签相符,则所述当前流量通过所述每一个流量过滤器。


5.如权利要求1所述更新A/B实验SDK的方法,其特征在于,所述将所述所命中实验的字节码文件嵌入至集成于待A/B测试软件的A/B测试SDK,以完成对所述A/B测试SDK的更新,包括:
执行所述A/B实验配置更新数据配置的待执行脚本,在所述A/B测试SDK指定位置将旧有版本字节码文件替换为所述所命中实验分组的字节码文件。


6.一种更新A/B实验SDK的方法,其特征在于,所述方法包括:
当A/B实验配置发生变化时,接收待A/B测试软件的开发商输入的A/B实验配置;
对所述A/B实验配置进行编码形成A/B实验配置更新数据;
将所述A/B实验配置更新数据发送至配置中心,以使集成于...

【专利技术属性】
技术研发人员:陈佳超揭宗昌林涛杨倩
申请(专利权)人:深圳依时货拉拉科技有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1