层域说明
核心概念:
ABC 平台的层域架构:

| 节点类型 | 说明 |
|---|---|
| Global Domain(全局域) | 整棵树的根节点,代表项目的全部流量(100%)。 |
| Domain(域) | 流量的逻辑分区,可嵌套。每个 Domain 从父级获取一定比例的流量。 |
| Multi-Layer Domain(多层域) | 域内的多个 Layer 共享同一份流量并行运行,实验之间不互斥。 |
| Exclusive Layer(互斥层) | 层内的实验互斥——同一个用户只会命中其中一个实验。 |
流量隔离原理
分层架构通过以下机制实现实验间的流量隔离:
同层互斥
同一个 Exclusive Layer 内,各实验占据不同的桶区间(bucket range),彼此不重叠。每个用户根据哈希值被分配到唯一的桶,因此在该层中只会命中一个实验。
跨层正交
不同层使用独立的哈希种子(hash seed)进行分流。用户在 Layer A 中被分到实验组,不会影响其在 Layer B 中的分组结果。两层的实验效果可以独立衡量,互不干扰。
结果:
- 同层 → 隔离(不会互相污染)
- 跨层 → 独立(可以同时评估)
- 整体效果:既避免了流量冲突,又最大化了流量复用
前置步骤:配置 Layers & Domains
创建分层实验前,你需要先有一个 Layer 来运行它。
1. 进入 Layers & Domains 列表页
在左侧导航栏点击 Experiments → 切换到 Layers & Domains 标签页。
该页面以表格形式展示当前项目的所有节点:
| 列 | 说明 |
|---|---|
| Name | 节点名称(层级缩进展示父子关系)。 |
| Experiments | 该节点下关联的实验。 |
| Type | 节点类型:Domain / Multi-Layer Domain / Exclusive Layer。 |
| % of global traffic | 占全局流量的百分比。 |
| Buckets | 分桶范围,如 [1~100]。 |
| Owner / Created at | 创建者及创建时间。 |
2. 进入编辑模式
点击列表页右上角的 Edit 按钮,进入编辑页面。
编辑页面分为三个区域:
- 左侧:树形目录导航,展示 Global Domain 下的完整层级结构,可展开/折叠子节点。顶部有搜索框可按名称检索。
- 中间:流量可视化视图,以条形图展示各节点的流量分配情况。每个节点卡片显示
% of parent traffic和% of global traffic。 - 底部图例:
- Used —— 已被实验占用的流量
- Unavailable —— 不可分配流量
- Available —— 可分配给新实验的剩余流量
3. Add to Layers & Domains
点击左上方的 + Add 按钮,右侧弹出 Add to Layers & Domains 面板:
| 字段 | 说明 |
|---|---|
| Name | 节点名称(如 "game_strategy_layer")。 |
| Key | 唯一标识 ID,只能包含字母、数字和下划线。 |
| Parent Domain | 选择父级域(下拉列表展示所有可选域)。 |
| Type | 节点类型(可选项取决于所选 Parent Domain,见下方规则)。 |
| Configure traffic | 分配给该节点的流量百分比(滑动条)。 |
| Parameters(可选) | 为该节点设置默认参数(仅 Exclusive Layer 类型可用)。 |
| Description(可选) | 节点描述信息。 |
Type 选择规则
| 父级节点 | 可选 Type | 说明 |
|---|---|---|
| Global Domain | Domain | 全局域下只能创建子域,做第一级流量划分。 |
| 其他 Domain | Domain / Multi-Layer Domain / Exclusive Layer | 子域下可继续细分或直接创建实验层。 |
| Type | 适用场景 |
|---|---|
| Domain | 需要多级流量划分,如先按业务线分,再按功能模块分。 |
| Multi-Layer Domain | 多个实验无参数冲突,希望复用同一批流量加快实验速度。 |
| Exclusive Layer | 实验间有参数冲突或需严格隔离,同一用户只命中一个实验。 |
Configure traffic(流量配置)
滑动条控件,设定当前节点可使用的流量占比。
注意事项:
- 流量范围取决于父级域中尚未被占用的可用流量。
- 若父级流量已被其他同级节点分配完毕,滑动条无法调整(显示为 0)。
- 若滑动条无法拖动,检查:
- 是否已选择 Type(未选择 Type 时不可调整)
- 父级域是否还有剩余可用流量
Parameters(参数配置)
仅当 Type 为 Exclusive Layer 时,可为该节点设置默认参数。
操作:
- 点击 Add parameter。
- 填写 Parameter key、Value type(String / Number / Boolean / JSON)、Parameter value。
- 如需多个参数,继续点击 Add parameter 新增行。
- 填写完成后点击 Confirm。
当该节点未设置默认参数时,系统使用 policy id 100000 作为默认策略。