CN114095410A - 一种测试实验的分流方法、分流装置和存储介质 - Google Patents
一种测试实验的分流方法、分流装置和存储介质 Download PDFInfo
- Publication number
- CN114095410A CN114095410A CN202111338343.5A CN202111338343A CN114095410A CN 114095410 A CN114095410 A CN 114095410A CN 202111338343 A CN202111338343 A CN 202111338343A CN 114095410 A CN114095410 A CN 114095410A
- Authority
- CN
- China
- Prior art keywords
- experiment
- flow
- group
- request
- sub
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000002474 experimental method Methods 0.000 title claims abstract description 564
- 238000000034 method Methods 0.000 title claims abstract description 53
- 238000012360 testing method Methods 0.000 title claims abstract description 40
- 238000004590 computer program Methods 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000012795 verification Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请公开了测试实验的分流方法、分流装置和存储介质。基于本申请,对待测试实验进行实验类型分类,并按照各实验类型对待测试实验中的每个实验层中包含的子实验,以及子实验中划分的实验分组进行流量配比后,为获取到的各个流量请求按照受众标签匹配相应的待测试实验,以及基于受众标识在待测试实验中为各流量请求匹配对应的实验分组,以优化待测试实验的分流策略,提升分流的准确性。
Description
技术领域
本申请涉及互联网技术领域,尤其涉及一种测试实验的分流方法、分流装置和存储介质。
背景技术
互联网业务领域中通常会使用AB测试对业务版本进行测试,评估出最好版本并进行发布。其中,AB测试是基于业务制作两个(A/B)或多个(A/B/n)版本,在同一时间维度,分别让组成成分相同(相似)的访客群组(目标人群)随机的访问这些版本,收集各群组的用户体验数据和业务数据。现有的AB测试中一般不支持多业务场景下同时进行多个AB实验,且业务场景存在耦合无法评估AB实验效果。
发明内容
本申请的各实施例提供了一种测试实验的分流方法、分流装置和存储介质,有助于优化AB实验的分流策略,提升测试效率。
在一个实施例中,一种测试实验的分流方法包括:
获取至少一个流量请求,其中,流量请求携带对应的受众标识和受众标签;
遍历待测试实验,基于获取的流量请求携带的受众标签,当在待测试实验的受众配置信息中包含当前流量请求携带的受众标签时,确定为与该流量请求对应的待测试实验;
分别为不同实验类型的待测试实验的每个实验层中包含的子实验,以及子实验中划分的实验分组进行流量配比,并按照实验类型和该流量请求对应的受众标识为经过该实验层的各流量请求匹配实验分组。
可选地,当获取的流量请求的受众标签与待测试实验的受众配置信息均不匹配时,在白名单配置信息中查询与流量请求的受众标签对应的实验分组,并在查询到对应的实验分组时,将该流量请求与该实验分组进行匹配。
可选地,当待测试实验的实验类型为第一实验类型时,在白名单配置信息中为与该待测试实验中包含的至少一个子实验对应的流量请求查询实验分组,并在查询到对应的实验分组时,为该流量请求匹配该实验分组;
为未查询到实验分组的流量请求携带的受众标识进行哈希运算,生成流量请求对应的哈希值,并以该哈希值对预设全流量值进行取模运算,生成该流量请求对应的分组编号;
在实验分组对应的流量编号集合包含当前的分组编号时,将与分组编号对应的流量请求与该实验分组匹配,其中,各实验分组对应的流量编号集合在进行流量配比时确定,各子实验的流量配比互斥且各子实验之间的流量配比的并集为预设全流量值,以及各子实验包含的实验分组的流量配比互斥且各子实验之间的流量配比的并集为该子实验的流量配比。
可选地,当待测试实验的实验类型为第二实验类型时,在白名单配置信息中为当前实验层中包含的子实验对应的流量请求查询实验分组,并在查询到对应的实验分组时,为该流量请求匹配该实验分组;
为未查询到实验分组的流量请求携带的受众标识进行哈希运算,生成流量请求对应的哈希值,并以该哈希值对预设全流量值进行取模运算,生成该流量请求对应的分组编号;
在当前实验层中的实验分组对应的流量编号集合包含当前的分组编号时,将与分组编号对应的流量请求与该实验分组匹配;
为在当前实验层未命中实验分组的流量请求在该待测试实验的每个实验层循环执行前述在白名单配置信息中为当前实验层中包含的子实验对应的流量请求查询实验分组的步骤至在当前实验层中的实验分组对应的流量编号集合包含当前的分组编号时,将与分组编号对应的流量请求与该实验分组匹配的步骤,直至该流量请求匹配到实验分组,其中,各实验分组对应的流量编号集合在进行流量配比时确定,以及,各实验层的子实验的流量配比均为预设全流量值。
在另一个实施例中,提供了一种测试实验的分流装置,该分流装置包括处理器和存储器:
所述处理器,用于获取至少一个流量请求,其中,流量请求携带对应的受众标识和受众标签;遍历待测试实验,基于获取的流量请求携带的受众标签,当在待测试实验的受众配置信息中包含当前流量请求携带的受众标签时,确定为与该流量请求对应的待测试实验;分别为不同实验类型的待测试实验的每个实验层中包含的子实验,以及子实验中划分的实验分组进行流量配比,并按照实验类型和该流量请求对应的受众标识为经过该实验层的各流量请求匹配实验分组。
可选地,所述处理器进一步用于,当获取的流量请求的受众标签与待测试实验的受众配置信息均不匹配时,在白名单配置信息中查询与流量请求的受众标签对应的实验分组,并在查询到对应的实验分组时,将该流量请求与该实验分组进行匹配。
可选地,所述处理器进一步用于,当待测试实验的实验类型为第一实验类型时,在白名单配置信息中为与该待测试实验中包含的至少一个子实验对应的流量请求查询实验分组,并在查询到对应的实验分组时,为该流量请求匹配该实验分组;为未查询到实验分组的流量请求携带的受众标识进行哈希运算,生成流量请求对应的哈希值,并以该哈希值对预设全流量值进行取模运算,生成该流量请求对应的分组编号;在实验分组对应的流量编号集合包含当前的分组编号时,将与分组编号对应的流量请求与该实验分组匹配,其中,各实验分组对应的流量编号集合在进行流量配比时确定,各子实验的流量配比互斥且各子实验之间的流量配比的并集为预设全流量值,以及各子实验包含的实验分组的流量配比互斥且各子实验之间的流量配比的并集为该子实验的流量配比。
可选地,所述处理器进一步用于,当待测试实验的实验类型为第二实验类型时,在白名单配置信息中为当前实验层中包含的子实验对应的流量请求查询实验分组,并在查询到对应的实验分组时,为该流量请求匹配该实验分组;为未查询到实验分组的流量请求携带的受众标识进行哈希运算,生成流量请求对应的哈希值,并以该哈希值对预设全流量值进行取模运算,生成该流量请求对应的分组编号;在当前实验层中的实验分组对应的流量编号集合包含当前的分组编号时,将与分组编号对应的流量请求与该实验分组匹配;为在当前实验层未命中实验分组的流量请求在该待测试实验的每个实验层循环执行前述在白名单配置信息中为当前实验层中包含的子实验对应的流量请求查询实验分组的步骤至在当前实验层中的实验分组对应的流量编号集合包含当前的分组编号时,将与分组编号对应的流量请求与该实验分组匹配的步骤,直至该流量请求匹配到实验分组,其中,各实验分组对应的流量编号集合在进行流量配比时确定,以及,各实验层的子实验的流量配比均为预设全流量值。
在本申请的另一个实施例中,提供了一种非瞬时计算机可读存储介质,所述非瞬时计算机可读存储介质存储指令,所述指令在由处理器执行时引发所述处理器执行前述实施例中的测试实验的分流方法。
在另一个实施例中,提供了一种计算机程序产品,包括计算机指令,所述计算机指令在被处理器执行时实施如上述任一项所述测试实验的分流方法。
基于上述实施例,对待测试实验进行实验类型分类,并按照各实验类型对待测试实验中的每个实验层中包含的子实验,以及子实验中划分的实验分组进行流量配比后,为获取到的各个流量请求按照受众标签匹配相应的待测试实验,以及基于受众标识在待测试实验中为各流量请求匹配对应的实验分组,以优化待测试实验的分流策略,提升分流的准确性。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请的一个实施例中的测试实验的分流方法的工作流程示意图;
图2为本申请的一个实施例中的测试实验的分流方法的流程示意图;
图3为如图2所示实施例中的测试实验的分流方法的扩展流程示意图;
图4为本申请的另一个实施例中的一种测试实验的分流装置的示意图;
图5为本申请的另一个实施例所提供的一种电子设备的示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其他步骤或单元。
本申请实施例可以为复杂场景下的待测试实验需求,基于不同的实验类型划分分流策略,同时该分流策略预先在内存中配置,减少端口调用,提升响应速率,保证对待测试实验适用分流策略后分流效果的准确性和稳定性。图1为本申请的一个实施例中的测试实验的分流方法的工作流程示意图。其中,如图1所示,获取业务需求,业务需求中包含针对需要进行AB测试的至少一个待测试实验。在AB实验配置管理模块中对待测试实验进行AB测试实验的实验配置,包括实验类型对应的分流策略、受众配置信息和白名单配置信息等的配置。同步AB实验配置管理模块中的分流策略和业务流量,为业务需求中的至少一个待测试实验提供分流操作的服务。其中,业务流量中包含对应受众的流量请求。进一步地,为待测试实验执行分流服务,并对分流后的数据结果进行封装采集,形成日志落库,为后续分析提供服务数据。
图2为本申请的一个实施例中的测试实验的分流方法的流程示意图。如图2所示,该分流方法的具体流程可以包括如下步骤:
S101,获取至少一个流量请求,其中,流量请求携带对应的受众标识和受众标签。
本步骤中,本申请实施例中的待测试实验在进行分流时会选取一定的业务场景,因此获取该业务场景中的流量请求进行后续的分流操作。如待测试实验中的业务功能在某个城市上线,以该城市作为业务场景,即可以将该城市的各个用户作为流量请求。其中,每个流量请求携带用户的受众标识,如用户的设备标识(Unique Device Identifier,UDID),唯一标识符(Universally Unique Identifier,UUID)等。以及,每个流量请求携带受众标签,受众标签为该流量请求对应的用户维度信息,包括且不限于城市、性别和年龄等。
S102,遍历待测试实验,基于获取的流量请求携带的受众标签,当在待测试实验的受众配置信息中包含当前流量请求携带的受众标签时,确定为与该流量请求对应的待测试实验。
本步骤中,每获取到一个流量请求,遍历当前需要进行分流操作的各个待测试实验。其中,待测试实验中可包含基于业务需求需要进行测试的一个或多个子实验,每个子实验中还可设置多个实验组。如为同一个业务目标制定两个方案(比如两个页面),将针对该业务目标的待测试实验随机分割成A/B两组实验组。复杂待测试实验中可以包含多个子实验,以及子实验中包含多个实验分组。
遍历待测试实验的过程中,基于当前流量请求的携带的受众标签,在各个待测试实验的受众配置信息中查询是否包含该受众标签。其中,待测试实验的受众配置信息可预先设置,可为该待测试实验配置期望的一个或多个受众标签。在当前的流量请求携带与待测试实验包含的受众标签一致的受众标签时,确定为与该流量请求对应的待测试实验。
S103,分别为不同实验类型的待测试实验的每个实验层中包含的子实验,以及子实验中划分的实验分组进行流量配比,并按照实验类型和该流量请求对应的受众标识为经过该实验层的各流量请求匹配实验分组。
本步骤中,本申请实施例中的待测试实验包括正交/单个和互斥两种实验类型。基于业务需要,预先为待测试实验中的各子实验以及子实验中的实验分组进行流量配比。进一步地,将前述确定的流量请求在对应的待测试实验中进行分流策略的处理。其中,不同实验类型的待测试实验在进行分流操作时,执行不同的分流策略。各流量请求通过携带的受众标识与待测试实验中的各个实验分组进行匹配。
基于上述实施例的收集方法,对待测试实验进行实验类型分类,并按照各实验类型对待测试实验中的每个实验层中包含的子实验,以及子实验中划分的实验分组进行流量配比后,为获取到的各个流量请求按照受众标签匹配相应的待测试实验,以及基于受众标识在待测试实验中为各流量请求匹配对应的实验分组,以优化待测试实验的分流策略,提升分流的准确性。
图3为如图2所示测试实验的分流方法的扩展流程示意图。请参见图3,该测试实验的分流方法可以被扩展为包括如下步骤:
S301,获取配置参数。
本步骤中,一般地,与待测试实验相关的数据信息存储在数据库中,分流接口每次从数据库中拉取待测试实验并实现分流逻辑容易造成响应时间低或者数据库崩溃等问题。本申请实施例采用基于内存的分流操作,将待测试实验的实验信息(实验分组和流量配比等)、实验类型、受众配置信息和白名单配置信息等加载至服务器内存中,减少输入输出产生的数据延迟问题,以保证高并发场景下的分流方法能够稳定运行。
其中,在对服务器内存进行设计时,需要保证分流过程的高效性,以使分流方法能够尽可能快地返回分流结果。如仅存储分流方法能够用到的有效信息,以及白名单配置信息的结构设计为流量请求的受众标识直接映射对应的实验分组的形式。
在维护内存中各个信息时,需要保证与待测试实验相关信息变更时能够及时更新内存,保证机器重启时能够正确加载实验信息。内存的加载需要在分流操作启动之前完成,避免因服务启动而实验信息未加载导致的分流异常情况。
间隔预设时间段对内存中的待测试实验的实验信息(实验分组和流量配比等)、实验类型、受众配置信息和白名单配置信息等进行更新。更新过程中自实验分组起始下而上地更新信息,保证在任意时刻分流方法流程能够正常执行。
S302,获取待测试实验。
本步骤中,待测试实验可以包含多个子实验,每个子实验基于业务需要划分实验分组。其中,待测试实验可以通过受众配置信息指定目标人群作为受众,如可通过选取不同的用户维度信息对应的人群作为受众,例如城市、性别、年龄等,也可选取特定人群作为受众,如初次注册用户。
S303,获取至少一个流量请求。
本步骤中,流量请求是待测试实验选取的业务场景中的业务流量。一般地,一个流量请求对应一个受众。其中,每个流量请求携带用户的受众标识,如用户的设备标识(Unique Device Identifier,UDID),唯一标识符(Universally Unique Identifier,UUID)等。以及,每个流量请求携带受众标签,受众标签为该流量请求对应的用户维度信息,包括且不限于城市、性别和年龄等。
S304,判断待测试实验是否参与本次分流操作。
本步骤中,可以通过验证token的方式判断当前的待测试实验是否参与本次分流操作。若是,则继续执行后续步骤;若否,将该待测试实验在本次分流操作中剔除。
S305,判断流量请求是否命中待测试实验。
本步骤中,遍历待测试实验,基于获取的流量请求携带的受众标签,判断待测试实验的受众配置信息中是否包含该受众标签。
S306,确定为与该流量请求对应的待测试实验。
本步骤中,基于获取的流量请求携带的受众标签,当在待测试实验的受众配置信息中包含当前流量请求携带的受众标签时,确定为与该流量请求对应的待测试实验。
S307,判断是否满足白名单配置信息。
本步骤中,当获取的流量请求的受众标签与待测试实验的受众配置信息均不匹配时,在白名单配置信息中查询与流量请求的受众标签对应的实验分组,并在查询到对应的实验分组时,将该流量请求与该实验分组进行匹配。可选地,白名单配置信息是指预先在实验分组上指定一系列流量请求的集合,对这些流量请求不需要进行分流操作而直接命中指定的实验分组。白名单配置信息可以通过触发指定的流量请求的分流场景后观察实验分组的正确性。若也不满足白名单配置信息则结束该流量请求的下一流程。
S308,判断待测试实验的实验类型。
本步骤中,待测试的实验类型一般包含为互斥的第一实验类型和为正交/单个的第二实验类型。在第一实验类型中,共享同一份流量就有可能出现实验效果之间相互干扰,每个待测试实验中的实验分组或每个待测试实验中的每个子实验的实验分组需要进行哈希运算匹配流量请求,每个流量请求匹配一个实验分组。在第二实验类型中,业务流量是共享的,每个实验层相当于单个实验场景,通过对实验分组的哈希运算命中对应的实验分组即可。
每个流量请求可以传递多个待测试实验,这些实验可以为第一实验类型或第二实验类型,通过分流方法的分流策略,最终会将所有匹配的实验分组相关信息进行整合,返回进行分析处理。
S309,当为第一实验类型时,判断是否满足白名单配置信息。
本步骤中,当待测试实验的实验类型为第一实验类型时,在白名单配置信息中为与该待测试实验中包含的至少一个子实验对应的流量请求查询实验分组,并在查询到对应的实验分组时,为该流量请求匹配该实验分组。具体地,在为第一实验类型时,由于多个子实验之间的流量配比是互斥的,可能存在同一个流量请求命中某个实验分组的同时在白名单配置信息中命中另一个实验分组,因此需要先进行白名单配置信息的验证,判断是否能够命中某个互斥的子实验的实验分组,如果能够命中直接返回分组结果即可。
S310,为流量请求匹配实验分组。
本步骤中,为未查询到实验分组的流量请求携带的受众标识进行哈希运算,生成流量请求对应的哈希值,并以该哈希值对预设全流量值进行取模运算,生成该流量请求对应的分组编号。以及,在实验分组对应的流量编号集合包含当前的分组编号时,将与分组编号对应的流量请求与该实验分组匹配。其中,各实验分组对应的流量编号集合在进行流量配比时确定,各子实验的流量配比互斥且各子实验之间的流量配比的并集为预设全流量值,以及各子实验包含的实验分组的流量配比互斥且各子实验之间的流量配比的并集为该子实验的流量配比。
若待测试实验中包含两个子实验,每个子实验中设置两个实验分组,预设全流量值为100,每个子实验的流量配比各为50%,每个子实验中的实验分组的流量配比各为25%。进一步地,从0起始编号,则一个子实验的其中一个实验分组包含0-24的分组编号,另一个实验分组包含25-49的分组编号,相似地,另一个子实验中的两个实验分组分别对应包含50-74和75-99的分组编号。
在第一实验类型中,每个流量请求只能匹配一个实验分组。通过采用哈希运算,如具有较好散列性的Murmur2算法获取哈希值,哈希值对预设全流量值100进行取模运算,生成该流量请求对应的分组编号。如果当前实验分组所在的流量编号集合包中含分组编号,那么表示当前流量请求能够命中当前实验分组,保证了用户在每层命中的实验是随机且是稳定的。
S311,当为第二实验类型时,判断是否满足白名单配置信息。
本步骤中,与第一实验类型中类似地,在正交实验中,需要在每一实验层进行同样的白名单配置信息的验证过程,将通过验证的分组结果进行封装返回。
S312,遍历各实验层的实验分组,为流量请求匹配实验分组。
本步骤中,满足第二实验类型的待测试实验为正交或单个类型的待测试实验。一般包含多个实验层,各个实验层之间业务流量是正交的,业务流量在穿越每一实验层时候,都会被随机打散,经过上实验层的流量请求可能会经过下以实验层的任一子实验。每个流量请求流经过一层实验层时仅命中一个实验分组。
为未查询到实验分组的流量请求携带的受众标识进行哈希运算,生成流量请求对应的哈希值,并以该哈希值对预设全流量值进行取模运算,生成该流量请求对应的分组编号。在当前实验层中的实验分组对应的流量编号集合包含当前的分组编号时,将与分组编号对应的流量请求与该实验分组匹配。其中,各实验分组对应的流量编号集合在进行流量配比时确定,以及,各实验层的子实验的流量配比均为预设全流量值。
若待测试实验中包含两个子实验,每个子实验中设置两个实验分组,预设全流量值为100%,每个实验层的子实验的流量配比为100%,子实验中的每个实验分组的流量配比各为50%。进一步地,从0起始编号,则一个实验层的其中一个实验分组包含0-49的分组编号,另一个实验分组包含50-99的分组编号,相似地,另一个实验层中的两个实验分组分别对应包含0-49和50-99的分组编号。
在第二实验类型中,每个流量请求在每个实验层只能匹配一个实验分组。通过采用哈希运算,如具有较好散列性的Murmur2算法获取哈希值,哈希值对预设全流量值100进行取模运算,生成该流量请求对应的分组编号。如果当前实验分组所在的流量编号集合包中含分组编号,那么表示当前流量请求能够命中当前实验分组,保证了用户在每层命中的实验是随机且是稳定的。
S313,判断是否匹配完成。
本步骤中,为在当前实验层未命中实验分组的流量请求重复前述步骤S311至步骤S313的,即在该待测试实验的每个实验层循环执行前述在白名单配置信息中为当前实验层中包含的子实验对应的流量请求查询实验分组的步骤至在当前实验层中的实验分组对应的流量编号集合包含当前的分组编号时,将与分组编号对应的流量请求与该实验分组匹配的步骤,直至该流量请求匹配到实验分组。
S314,封装分组结果形成日志落库。
综上,本申请实施例通过为不同实验类型的待测试实验执行不同的分流策略,针对复杂业务场景的AB实验分流操作,提供正交和互斥等中分流模型对应的分流操作。另外,采用基于内存机制的分流策略,摒弃数据库调用等方式带来的响应延迟问题,定时更新实验数据,保证分流效果的准确性和分流响应的稳定性。
基于与前述测试实验的分流方法的同一发明构思,本申请实施例还提供一种测试实验的分流装置。
图4为本申请的另一个实施例中的一种测试实验的分流装置的示意图。其中,该收集装置可以包括:
获取模块41,用于获取至少一个流量请求,其中,流量请求携带对应的受众标识和受众标签;
确定模块42,用于遍历待测试实验,基于获取的流量请求携带的受众标签,当在待测试实验的受众配置信息中包含当前流量请求携带的受众标签时,确定为与该流量请求对应的待测试实验;
匹配模块43,用于分别为不同实验类型的待测试实验的每个实验层中包含的子实验,以及子实验中划分的实验分组进行流量配比,并按照实验类型和该流量请求对应的受众标识为经过该实验层的各流量请求匹配实验分组。
本实施例中,获取模块41、确定模块42和匹配模块43的具体功能和交互方式,可参见图1对应的实施例的记载,在此不再赘述。
可选地,该分流装置还包括筛选模块44用于:
当获取的流量请求的受众标签与待测试实验的受众配置信息均不匹配时,在白名单配置信息中查询与流量请求的受众标签对应的实验分组,并在查询到对应的实验分组时,将该流量请求与该实验分组进行匹配。
可选地,匹配模块43还用于:
当待测试实验的实验类型为第一实验类型时,在白名单配置信息中为与该待测试实验中包含的至少一个子实验对应的流量请求查询实验分组,并在查询到对应的实验分组时,为该流量请求匹配该实验分组;
为未查询到实验分组的流量请求携带的受众标识进行哈希运算,生成流量请求对应的哈希值,并以该哈希值对预设全流量值进行取模运算,生成该流量请求对应的分组编号;
在实验分组对应的流量编号集合包含当前的分组编号时,将与分组编号对应的流量请求与该实验分组匹配,其中,各实验分组对应的流量编号集合在进行流量配比时确定,各子实验的流量配比互斥且各子实验之间的流量配比的并集为预设全流量值,以及各子实验包含的实验分组的流量配比互斥且各子实验之间的流量配比的并集为该子实验的流量配比。
可选地,匹配模块43进一步用于:
当待测试实验的实验类型为第二实验类型时,在白名单配置信息中为当前实验层中包含的子实验对应的流量请求查询实验分组,并在查询到对应的实验分组时,为该流量请求匹配该实验分组;
为未查询到实验分组的流量请求携带的受众标识进行哈希运算,生成流量请求对应的哈希值,并以该哈希值对预设全流量值进行取模运算,生成该流量请求对应的分组编号;
在当前实验层中的实验分组对应的流量编号集合包含当前的分组编号时,将与分组编号对应的流量请求与该实验分组匹配;
为在当前实验层未命中实验分组的流量请求在该待测试实验的每个实验层循环执行前述在白名单配置信息中为当前实验层中包含的子实验对应的流量请求查询实验分组的步骤至在当前实验层中的实验分组对应的流量编号集合包含当前的分组编号时,将与分组编号对应的流量请求与该实验分组匹配的步骤,直至该流量请求匹配到实验分组,其中,各实验分组对应的流量编号集合在进行流量配比时确定,以及,各实验层的子实验的流量配比均为预设全流量值。
图5为本申请的另一个实施例所提供的一种电子设备的示意图。如图5所示,本申请的又一实施例还提供一种电子设备,其可以包括处理器501,其中,处理器501用于执行上述一种对测试实验的分流方法的步骤,包括:用于获取至少一个流量请求,其中,流量请求携带对应的受众标识和受众标签;遍历待测试实验,基于获取的流量请求携带的受众标签,当在待测试实验的受众配置信息中包含当前流量请求携带的受众标签时,确定为与该流量请求对应的待测试实验;分别为不同实验类型的待测试实验的每个实验层中包含的子实验,以及子实验中划分的实验分组进行流量配比,并按照实验类型和该流量请求对应的受众标识为经过该实验层的各流量请求匹配实验分组。
实际应用中,所述处理器502进一步用于,当获取的流量请求的受众标签与待测试实验的受众配置信息均不匹配时,在白名单配置信息中查询与流量请求的受众标签对应的实验分组,并在查询到对应的实验分组时,将该流量请求与该实验分组进行匹配。
实际应用中,所述处理器502进一步用于,当待测试实验的实验类型为第一实验类型时,在白名单配置信息中为与该待测试实验中包含的至少一个子实验对应的流量请求查询实验分组,并在查询到对应的实验分组时,为该流量请求匹配该实验分组;为未查询到实验分组的流量请求携带的受众标识进行哈希运算,生成流量请求对应的哈希值,并以该哈希值对预设全流量值进行取模运算,生成该流量请求对应的分组编号;在实验分组对应的流量编号集合包含当前的分组编号时,将与分组编号对应的流量请求与该实验分组匹配,其中,各实验分组对应的流量编号集合在进行流量配比时确定,各子实验的流量配比互斥且各子实验之间的流量配比的并集为预设全流量值,以及各子实验包含的实验分组的流量配比互斥且各子实验之间的流量配比的并集为该子实验的流量配比。
所述处理器502进一步用于,当待测试实验的实验类型为第二实验类型时,在白名单配置信息中为当前实验层中包含的子实验对应的流量请求查询实验分组,并在查询到对应的实验分组时,为该流量请求匹配该实验分组;为未查询到实验分组的流量请求携带的受众标识进行哈希运算,生成流量请求对应的哈希值,并以该哈希值对预设全流量值进行取模运算,生成该流量请求对应的分组编号;在当前实验层中的实验分组对应的流量编号集合包含当前的分组编号时,将与分组编号对应的流量请求与该实验分组匹配;为在当前实验层未命中实验分组的流量请求在该待测试实验的每个实验层循环执行前述在白名单配置信息中为当前实验层中包含的子实验对应的流量请求查询实验分组的步骤至在当前实验层中的实验分组对应的流量编号集合包含当前的分组编号时,将与分组编号对应的流量请求与该实验分组匹配的步骤,直至该流量请求匹配到实验分组,其中,各实验分组对应的流量编号集合在进行流量配比时确定,以及,各实验层的子实验的流量配比均为预设全流量值。
从图5中还可以看出,上述实施例提供的电子设备还包括非瞬时计算机可读存储介质502,该非瞬时计算机可读存储介质502上存储有计算机程序,该计算机程序被处理器501运行时执行上述一种对测试实验的分流方法的步骤。
具体地,该非瞬时计算机可读存储介质502能够为通用的存储介质,如移动磁盘、硬盘、FLASH、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、或便携式紧凑磁盘只读存储器(CD-ROM)等,该非瞬时计算机可读存储介质502上的计算机程序被处理器501运行时,能够引发处理器501执行上述的一种对测试实验的分流方法中的各个步骤。
实际应用中,所述的非瞬时计算机可读存储介质502可以是上述实施例中描述的设备/装置/系统中所包含的,也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或多个程序被执行时,能够执行上述的一种对测试实验的分流方法中的各个步骤。
实际应用中,本申请实施例还可以提供一种计算机程序产品,包括计算机指令,所述计算机指令在被处理器执行时实施如上述任一项所述测试实验的分流方法。
本申请附图中的流程图和框图,示出了按照本申请公开的各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或者代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应该注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同附图中所标注的顺序发生。例如,两个连接地表示的方框实际上可以基本并行地执行,它们有时也可以按照相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或者流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,即使这样的组合或结合没有明确记载于本申请中。特别地,在不脱离本申请精神和教导的情况下,本申请的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合,所有这些组合和/或结合均落入本申请公开的范围。
最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行变更或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些变更、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
Claims (10)
1.一种测试实验的分流方法,其特征在于,包括:
获取至少一个流量请求,其中,流量请求携带对应的受众标识和受众标签;
遍历待测试实验,基于获取的流量请求携带的受众标签,当在待测试实验的受众配置信息中包含当前流量请求携带的受众标签时,确定为与该流量请求对应的待测试实验;
分别为不同实验类型的待测试实验的每个实验层中包含的子实验,以及子实验中划分的实验分组进行流量配比,并按照实验类型和该流量请求对应的受众标识为经过该实验层的各流量请求匹配实验分组。
2.根据权利要求1所述的分流方法,其特征在于,在遍历待测试实验的步骤和分别为不同实验类型的待测试实验的每个实验层中包含的子实验,以及子实验中划分的实验分组进行流量配比的步骤之间,该分流方法进一步包括:
当获取的流量请求的受众标签与待测试实验的受众配置信息均不匹配时,在白名单配置信息中查询与流量请求的受众标签对应的实验分组,并在查询到对应的实验分组时,将该流量请求与该实验分组进行匹配。
3.根据权利要求1所述的分流方法,其特征在于,并按照实验类型和该流量请求对应的受众标识为经过该实验层的各流量请求匹配实验分组的步骤包括:
当待测试实验的实验类型为第一实验类型时,在白名单配置信息中为与该待测试实验中包含的至少一个子实验对应的流量请求查询实验分组,并在查询到对应的实验分组时,为该流量请求匹配该实验分组;
为未查询到实验分组的流量请求携带的受众标识进行哈希运算,生成流量请求对应的哈希值,并以该哈希值对预设全流量值进行取模运算,生成该流量请求对应的分组编号;
在实验分组对应的流量编号集合包含当前的分组编号时,将与分组编号对应的流量请求与该实验分组匹配,其中,各实验分组对应的流量编号集合在进行流量配比时确定,各子实验的流量配比互斥且各子实验之间的流量配比的并集为预设全流量值,以及各子实验包含的实验分组的流量配比互斥且各子实验之间的流量配比的并集为该子实验的流量配比。
4.根据权利要求3所述的分流方法,其特征在于,并按照实验类型和该流量请求对应的受众标识为经过该实验层的各流量请求匹配实验分组的步骤包括:
当待测试实验的实验类型为第二实验类型时,在白名单配置信息中为当前实验层中包含的子实验对应的流量请求查询实验分组,并在查询到对应的实验分组时,为该流量请求匹配该实验分组;
为未查询到实验分组的流量请求携带的受众标识进行哈希运算,生成流量请求对应的哈希值,并以该哈希值对预设全流量值进行取模运算,生成该流量请求对应的分组编号;
在当前实验层中的实验分组对应的流量编号集合包含当前的分组编号时,将与分组编号对应的流量请求与该实验分组匹配;
为在当前实验层未命中实验分组的流量请求在该待测试实验的每个实验层循环执行前述在白名单配置信息中为当前实验层中包含的子实验对应的流量请求查询实验分组的步骤至在当前实验层中的实验分组对应的流量编号集合包含当前的分组编号时,将与分组编号对应的流量请求与该实验分组匹配的步骤,直至该流量请求匹配到实验分组,其中,各实验分组对应的流量编号集合在进行流量配比时确定,以及,各实验层的子实验的流量配比均为预设全流量值。
5.一种测试实验的分流装置,其特征在于,该装置包括处理器和存储器;
所述处理器,用于获取至少一个流量请求,其中,流量请求携带对应的受众标识和受众标签;遍历待测试实验,基于获取的流量请求携带的受众标签,当在待测试实验的受众配置信息中包含当前流量请求携带的受众标签时,确定为与该流量请求对应的待测试实验;分别为不同实验类型的待测试实验的每个实验层中包含的子实验,以及子实验中划分的实验分组进行流量配比,并按照实验类型和该流量请求对应的受众标识为经过该实验层的各流量请求匹配实验分组。
6.根据权利要求5所述的分流装置,其特征在于,
所述处理器进一步用于,当获取的流量请求的受众标签与待测试实验的受众配置信息均不匹配时,在白名单配置信息中查询与流量请求的受众标签对应的实验分组,并在查询到对应的实验分组时,将该流量请求与该实验分组进行匹配。
7.根据权利要求5所述的分流装置,其特征在于,
所述处理器进一步用于,当待测试实验的实验类型为第一实验类型时,在白名单配置信息中为与该待测试实验中包含的至少一个子实验对应的流量请求查询实验分组,并在查询到对应的实验分组时,为该流量请求匹配该实验分组;为未查询到实验分组的流量请求携带的受众标识进行哈希运算,生成流量请求对应的哈希值,并以该哈希值对预设全流量值进行取模运算,生成该流量请求对应的分组编号;在实验分组对应的流量编号集合包含当前的分组编号时,将与分组编号对应的流量请求与该实验分组匹配,其中,各实验分组对应的流量编号集合在进行流量配比时确定,各子实验的流量配比互斥且各子实验之间的流量配比的并集为预设全流量值,以及各子实验包含的实验分组的流量配比互斥且各子实验之间的流量配比的并集为该子实验的流量配比。
8.根据权利要求7所述的分流装置,其特征在于,
所述处理器进一步用于,当待测试实验的实验类型为第二实验类型时,在白名单配置信息中为当前实验层中包含的子实验对应的流量请求查询实验分组,并在查询到对应的实验分组时,为该流量请求匹配该实验分组;为未查询到实验分组的流量请求携带的受众标识进行哈希运算,生成流量请求对应的哈希值,并以该哈希值对预设全流量值进行取模运算,生成该流量请求对应的分组编号;在当前实验层中的实验分组对应的流量编号集合包含当前的分组编号时,将与分组编号对应的流量请求与该实验分组匹配;为在当前实验层未命中实验分组的流量请求在该待测试实验的每个实验层循环执行前述在白名单配置信息中为当前实验层中包含的子实验对应的流量请求查询实验分组的步骤至在当前实验层中的实验分组对应的流量编号集合包含当前的分组编号时,将与分组编号对应的流量请求与该实验分组匹配的步骤,直至该流量请求匹配到实验分组,其中,各实验分组对应的流量编号集合在进行流量配比时确定,以及,各实验层的子实验的流量配比均为预设全流量值。
9.一种非瞬时计算机可读存储介质,其特征在于,所述非瞬时计算机可读存储介质存储指令,所述指令在由处理器执行时使得所述处理器执行如权利要求1至4任一项所述的一种测试实验的分流方法。
10.一种计算机程序产品,包括计算机指令,所述计算机指令在被处理器执行时实施如上述权利要求1~4任一项所述测试实验的分流方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111338343.5A CN114095410B (zh) | 2021-11-11 | 2021-11-11 | 一种测试实验的分流方法、分流装置和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111338343.5A CN114095410B (zh) | 2021-11-11 | 2021-11-11 | 一种测试实验的分流方法、分流装置和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114095410A true CN114095410A (zh) | 2022-02-25 |
CN114095410B CN114095410B (zh) | 2023-10-31 |
Family
ID=80300187
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111338343.5A Active CN114095410B (zh) | 2021-11-11 | 2021-11-11 | 一种测试实验的分流方法、分流装置和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114095410B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109039800A (zh) * | 2018-06-28 | 2018-12-18 | 腾讯科技(深圳)有限公司 | 在流量实验中进行流量分配的方法、装置和计算机设备 |
CN110750436A (zh) * | 2018-07-23 | 2020-02-04 | 腾讯科技(深圳)有限公司 | 分层测试方法、装置、计算机可读介质及电子设备 |
CN110830234A (zh) * | 2019-11-06 | 2020-02-21 | 腾讯科技(深圳)有限公司 | 一种用户流量分配方法及装置 |
CN111967798A (zh) * | 2020-09-07 | 2020-11-20 | 上海优扬新媒信息技术有限公司 | 实验样本分配的方法及装置、设备及计算机可读存储介质 |
CN112269743A (zh) * | 2020-10-30 | 2021-01-26 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种a/b测试方法及装置 |
CN113055248A (zh) * | 2021-03-12 | 2021-06-29 | 土巴兔集团股份有限公司 | 流量分配方法、装置、计算机设备及存储介质 |
-
2021
- 2021-11-11 CN CN202111338343.5A patent/CN114095410B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109039800A (zh) * | 2018-06-28 | 2018-12-18 | 腾讯科技(深圳)有限公司 | 在流量实验中进行流量分配的方法、装置和计算机设备 |
CN110750436A (zh) * | 2018-07-23 | 2020-02-04 | 腾讯科技(深圳)有限公司 | 分层测试方法、装置、计算机可读介质及电子设备 |
CN110830234A (zh) * | 2019-11-06 | 2020-02-21 | 腾讯科技(深圳)有限公司 | 一种用户流量分配方法及装置 |
CN111967798A (zh) * | 2020-09-07 | 2020-11-20 | 上海优扬新媒信息技术有限公司 | 实验样本分配的方法及装置、设备及计算机可读存储介质 |
CN112269743A (zh) * | 2020-10-30 | 2021-01-26 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种a/b测试方法及装置 |
CN113055248A (zh) * | 2021-03-12 | 2021-06-29 | 土巴兔集团股份有限公司 | 流量分配方法、装置、计算机设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114095410B (zh) | 2023-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109345388B (zh) | 区块链智能合约验证方法、装置及存储介质 | |
CN108268372B (zh) | Mock测试处理方法、装置、存储介质和计算机设备 | |
CN107343047B (zh) | 应用推广系统及方法 | |
CN106407207B (zh) | 一种实时新增数据更新方法和装置 | |
CN107015985B (zh) | 一种数据存储与获取方法及装置 | |
US8825684B2 (en) | Arrangement for comparing content identifiers of files | |
CN105989044A (zh) | 一种数据库校验方法及系统 | |
CN108063685B (zh) | 日志分析方法及装置 | |
CN111507479B (zh) | 特征分箱方法、装置、设备及计算机可读存储介质 | |
WO2022134471A1 (zh) | 区块链节点的管理方法、装置、计算机设备和存储介质 | |
CN111523849A (zh) | 资源交易的审核方法、装置及服务器 | |
CN104317574B (zh) | 识别应用程序类型的方法和装置 | |
CN110941632A (zh) | 一种数据库审计方法、装置及设备 | |
CN109840210A (zh) | 一种测试方法、装置及电子设备 | |
CN109614515B (zh) | 视频搜索评价方法和系统 | |
CN105847320A (zh) | 一种资源获取方法和装置 | |
CN104185056A (zh) | 一种节目均匀排布方法、装置及led节目显示系统 | |
CN114095410A (zh) | 一种测试实验的分流方法、分流装置和存储介质 | |
CN111672128A (zh) | 基于本地保留时长识别的游戏商城游戏推荐方法及系统 | |
CN109947846B (zh) | 交易数据处理方法、装置、计算机设备和存储介质 | |
CN110427557A (zh) | 主播推荐方法、装置、电子设备及计算机可读存储介质 | |
CN115118500B (zh) | 攻击行为规则获取方法、装置及电子设备 | |
JP2019537794A (ja) | トレーサビリティ識別子 | |
CN112817742B (zh) | 数据迁移方法、装置、设备及存储介质 | |
CN113055459B (zh) | 日志投递方法和装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20230925 Address after: Room 102, floor 1, building 1, No. 2, Chuangye Road, Haidian District, Beijing 100085 Applicant after: Seashell Housing (Beijing) Technology Co.,Ltd. Address before: 101399 room 24, 62 Farm Road, Erjie village, Yangzhen, Shunyi District, Beijing Applicant before: Beijing fangjianghu Technology Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |