模块 ngx_stream_split_clients_module

示例配置
指令
     split_clients

ngx_stream_split_clients_module 模块 (1.11.3) 创建适合 A/B 测试(也称为拆分测试)的变量。

示例配置

stream {
    ...
    split_clients "${remote_addr}AAA" $upstream {
                  0.5%                feature_test1;
                  2.0%                feature_test2;
                  *                   production;
    }

    server {
        ...
        proxy_pass $upstream;
    }
}

指令

语法 split_clients 字符串 $变量 { ... }
默认值
上下文

创建 A/B 测试变量,例如

split_clients "${remote_addr}AAA" $variant {
               0.5%               .one;
               2.0%               .two;
               *                  "";
}

原始字符串的值使用 MurmurHash2 进行哈希。在给定的示例中,0 到 21474835 (0.5%) 的哈希值对应于 $variant 变量的值 ".one",21474836 到 107374180 (2%) 的哈希值对应于值 ".two",107374181 到 4294967295 的哈希值对应于值 ""(空字符串)。