Mercurial > hg > nginx-site
view xml/ru/docs/stream/ngx_stream_split_clients_module.xml @ 2034:7e7edf832099
Added the generated ngx_http_api_module and separate target for it.
This avoids unnecessary build steps and dependencies. The separate
'genapi' target is added to regenerate the ngx_http_api_module from
yaml source. The generated file is not removed during 'clean' step.
author | Vladimir Homutov <vl@nginx.com> |
---|---|
date | Fri, 08 Sep 2017 13:58:41 +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="Модуль ngx_stream_split_clients_module" link="/ru/docs/stream/ngx_stream_split_clients_module.html" lang="ru" rev="2"> <section id="summary"> <para> Модуль <literal>ngx_stream_split_clients_module</literal> (1.11.3) создаёт переменные для A/B тестирования (также известного как “split-тестирование”). </para> </section> <section id="example" name="Пример конфигурации"> <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="Директивы"> <directive name="split_clients"> <syntax block="yes"> <value>строка</value> <value>$переменная</value></syntax> <default/> <context>stream</context> <para> Создаёт переменную для A/B тестирования, например: <example> split_clients "${remote_addr}AAA" $variant { 0.5% .one; 2.0% .two; * ""; } </example> Значение исходной строки хэшируется с помощью MurmurHash2. В приведённом примере при значениях хэша от 0 до 21474835 (0.5%) переменная <var>$variant</var> получит значение <literal>".one"</literal>. При значениях хэша от 21474836 до 107374180 (2%) — <literal>".two"</literal>. И при значениях хэша от 107374181 до 4294967295 — <literal>""</literal> (пустая строка). </para> </directive> </section> </module>