Module ngx_stream_split_clients_module

范例配置
指令
split_clients

The ngx_stream_split_clients_module module (1.11.3) creates variables suitable for A/B testing, also known as split testing.

范例配置

                    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

Creates a variable for A/B testing, for example:

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

The value of the original string is hashed using MurmurHash2. In the example given, hash values from 0 to 21474835 (0.5%) correspond to the value ".one" of the $variant variable, hash values from 21474836 to 107374180 (2%) correspond to the value ".two" , and hash values from 107374181 to 4294967295 correspond to the value "" (an empty string).