Mercurial > hg > nginx-site
comparison xml/ru/docs/http/ngx_http_limit_req_module.xml @ 529:d477ae38c0bd
Clarified on what this module actually limits.
author | Ruslan Ermilov <ru@nginx.com> |
---|---|
date | Wed, 06 Jun 2012 14:17:28 +0000 |
parents | bef9e1a2e3c8 |
children | ebcb351d9eb3 |
comparison
equal
deleted
inserted
replaced
528:85bbe7a5f393 | 529:d477ae38c0bd |
---|---|
8 | 8 |
9 <section id="summary"> | 9 <section id="summary"> |
10 | 10 |
11 <para> | 11 <para> |
12 Модуль <literal>ngx_http_limit_req_module</literal> (0.7.21) позволяет | 12 Модуль <literal>ngx_http_limit_req_module</literal> (0.7.21) позволяет |
13 ограничить число запросов | 13 ограничить скорость обработки запросов по заданному ключу или, |
14 по заданному ключу или, как частный случай, число запросов с одного IP-адреса. | 14 как частный случай, скорость обработки запросов, поступающих |
15 Ограничение делается с помощью метода “leaky bucket”. | 15 с одного IP-адреса. |
16 Ограничение обеспечивается с помощью метода “leaky bucket”. | |
16 </para> | 17 </para> |
17 | 18 |
18 </section> | 19 </section> |
19 | 20 |
20 | 21 |
52 <context>server</context> | 53 <context>server</context> |
53 <context>location</context> | 54 <context>location</context> |
54 | 55 |
55 <para> | 56 <para> |
56 Задаёт зону (zone) и максимально возможные всплески запросов (burst). | 57 Задаёт зону (zone) и максимально возможные всплески запросов (burst). |
57 Если скорость запросов превышает описанную в зоне, | 58 Если скорость поступления запросов превышает описанную в зоне, |
58 то их обработка задерживается так, чтобы запросы обрабатывались | 59 то их обработка задерживается так, чтобы запросы обрабатывались |
59 с заданной скоростью. | 60 с заданной скоростью. |
60 Избыточные запросы задерживаются до тех пор, пока их число | 61 Избыточные запросы задерживаются до тех пор, пока их число |
61 не превысит заданное число всплесков. | 62 не превысит заданное число всплесков. |
62 В этом случае запрос завершается с ошибкой | 63 При превышении запрос завершается с ошибкой |
63 <http-status code="503" text="Service Temporarily Unavailable"/>. | 64 <http-status code="503" text="Service Temporarily Unavailable"/>. |
64 По умолчанию число всплесков равно нулю. | 65 По умолчанию число всплесков равно нулю. |
65 Например, директивы | 66 Например, директивы |
66 <example> | 67 <example> |
67 limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s; | 68 limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s; |
97 <context>server</context> | 98 <context>server</context> |
98 <context>location</context> | 99 <context>location</context> |
99 <appeared-in>0.8.18</appeared-in> | 100 <appeared-in>0.8.18</appeared-in> |
100 | 101 |
101 <para> | 102 <para> |
102 Задаёт желаемый уровень записи в лог случаев ограничения | 103 Задаёт желаемый уровень записи в лог |
103 числа запросов и задержек при обработке запроса. | 104 случаев отказа в обработке запросов при превышении скорости |
104 Задержки записываются в лог с уровнем на единицу меньшим, чем ограничения, | 105 и случаев задержек при обработке запроса. |
106 Задержки записываются в лог с уровнем на единицу меньшим, чем отказы, | |
105 например, если указано “<literal>limit_req_log_level notice</literal>”, | 107 например, если указано “<literal>limit_req_log_level notice</literal>”, |
106 то задержки будут записываться в лог на уровне <literal>info</literal>. | 108 то задержки будут записываться в лог на уровне <literal>info</literal>. |
107 </para> | 109 </para> |
108 | 110 |
109 </directive> | 111 </directive> |
118 <context>http</context> | 120 <context>http</context> |
119 | 121 |
120 <para> | 122 <para> |
121 Задаёт параметры зоны, | 123 Задаёт параметры зоны, |
122 которая хранит состояние для разных значений ключа. | 124 которая хранит состояние для разных значений ключа. |
123 Состояние в частности хранит текущее число запросов. | 125 Состояние в частности хранит текущее число избыточных запросов. |
124 Ключом является любое непустое значение заданной переменной | 126 Ключом является любое непустое значение заданной переменной |
125 (пустые значения не учитываются). | 127 (пустые значения не учитываются). |
126 Пример использования: | 128 Пример использования: |
127 <example> | 129 <example> |
128 limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s; | 130 limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s; |
129 </example> | 131 </example> |
130 </para> | 132 </para> |
131 | 133 |
132 <para> | 134 <para> |
133 В данном случае состояния хранятся в зоне “one” размером 10 мегабайт, | 135 В данном случае состояния хранятся в зоне “one” размером 10 мегабайт, |
134 и средняя скорость запросов для этой зоны не может превышать | 136 и средняя скорость обработки запросов для этой зоны не может превышать |
135 1 запроса в секунду. | 137 1 запроса в секунду. |
136 </para> | 138 </para> |
137 | 139 |
138 <para> | 140 <para> |
139 В качестве ключа используется IP-адрес клиента. | 141 В качестве ключа используется IP-адрес клиента. |