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 string $variable { ... }
預設
上下文 stream

建立用於 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 對應於 "" 值(空字串)。