Mercurial > hg > nginx-site
view xml/en/docs/stream/ngx_stream_split_clients_module.xml @ 3075:6fcdefd1df4e
Renamed download page.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Tue, 09 Apr 2024 18:16:11 +0300 |
parents | 42d2806f5b28 |
children |
line wrap: on
line source
<?xml version="1.0"?> <!-- Copyright (C) Nginx, Inc. --> <!DOCTYPE module SYSTEM "../../../../dtd/module.dtd"> <module name="Module ngx_stream_split_clients_module" link="/en/docs/stream/ngx_stream_split_clients_module.html" lang="en" rev="2"> <section id="summary"> <para> The <literal>ngx_stream_split_clients_module</literal> module (1.11.3) creates variables suitable for A/B testing, also known as split testing. </para> </section> <section id="example" name="Example Configuration"> <para> <example> stream { ... split_clients "${remote_addr}AAA" $upstream { 0.5% feature_test1; 2.0% feature_test2; * production; } server { ... proxy_pass $upstream; } } </example> </para> </section> <section id="directives" name="Directives"> <directive name="split_clients"> <syntax block="yes"> <value>string</value> <value>$variable</value></syntax> <default/> <context>stream</context> <para> Creates a variable for A/B testing, for example: <example> split_clients "${remote_addr}AAA" $variant { 0.5% .one; 2.0% .two; * ""; } </example> 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 <literal>".one"</literal> of the <var>$variant</var> variable, hash values from 21474836 to 107374180 (2%) correspond to the value <literal>".two"</literal>, and hash values from 107374181 to 4294967295 correspond to the value <literal>""</literal> (an empty string). </para> </directive> </section> </module>