Mercurial > hg > nginx-site
view xml/en/docs/http/ngx_http_keyval_module.xml @ 2418:7e1af2148946
Updated note in slow_start with random load balancing method.
author | Yaroslav Zhuravlev <yar@nginx.com> |
---|---|
date | Tue, 13 Aug 2019 20:45:38 +0300 |
parents | 9aa6f3f76055 |
children | dd3ac7eefeed |
line wrap: on
line source
<?xml version="1.0"?> <!-- Copyright (C) Nginx, Inc. --> <!DOCTYPE module SYSTEM "../../../../dtd/module.dtd"> <module name="Module ngx_http_keyval_module" link="/en/docs/http/ngx_http_keyval_module.html" lang="en" rev="4"> <section id="summary"> <para> The <literal>ngx_http_keyval_module</literal> module (1.13.3) creates variables with values taken from key-value pairs managed by the <link doc="ngx_http_api_module.xml" id="http_keyvals_">API</link>. </para> <para> <note> This module is available as part of our <commercial_version>commercial subscription</commercial_version>. </note> </para> </section> <section id="example" name="Example Configuration"> <para> <example> http { keyval_zone zone=one:32k state=one.keyval; keyval $arg_text $text zone=one; ... server { ... location / { return 200 $text; } location /api { api write=on; } } } </example> </para> </section> <section id="directives" name="Directives"> <directive name="keyval"> <syntax> <value>key</value> <value>$variable</value> <literal>zone</literal>=<value>name</value></syntax> <default/> <context>http</context> <para> Creates a new <value>$variable</value> whose value is looked up by the <value>key</value> in the key-value database. Strings are matched ignoring the case. The database is stored in a shared memory zone specified by the <literal>zone</literal> parameter. </para> </directive> <directive name="keyval_zone"> <syntax> <literal>zone</literal>=<value>name</value>:<value>size</value> [<literal>state</literal>=<value>file</value>] [<literal>timeout</literal>=<value>time</value>] [<literal>sync</literal>]</syntax> <default/> <context>http</context> <para> Sets the <value>name</value> and <value>size</value> of the shared memory zone that keeps the key-value database. Key-value pairs are managed by the <link doc="ngx_http_api_module.xml" id="http_keyvals_">API</link>. </para> <para id="keyval_state"> The optional <literal>state</literal> parameter specifies a <value>file</value> that keeps the current state of the key-value database in the JSON format and makes it persistent across nginx restarts. </para> <para id="keyval_timeout"> The optional <literal>timeout</literal> parameter (1.15.0) sets the time after which key-value pairs are removed from the zone. </para> <para id="keyval_sync"> The optional <literal>sync</literal> parameter (1.15.0) enables <link doc="../stream/ngx_stream_zone_sync_module.xml" id="zone_sync">synchronization</link> of the shared memory zone. The synchronization requires the <literal>timeout</literal> parameter to be set. <note> If the synchronization is enabled, removal of key-value pairs (no matter <link doc="ngx_http_api_module.xml" id="patchHttpKeyvalZoneKeyValue">one</link> or <link doc="ngx_http_api_module.xml" id="deleteHttpKeyvalZoneData">all</link>) will be performed only on a target cluster node. The same key-value pairs on other cluster nodes will be removed upon <literal>timeout</literal>. </note> </para> </directive> </section> </module>