hf400159 commented on code in PR #7576: URL: https://github.com/apache/apisix/pull/7576#discussion_r933784803
########## docs/zh/latest/plugins/limit-req.md: ########## @@ -85,25 +91,27 @@ curl http://127.0.0.1:9080/apisix/admin/routes/1 -H 'X-API-KEY: edd1c9f034335f13 "upstream": { "type": "roundrobin", "nodes": { - "127.0.0.1:1980": 1 + "127.0.0.1:9001": 1 } } -}' +} ``` -你也可以通过 web 界面来完成上面的操作,先增加一个 route,然后在插件页面中添加 limit-req 插件: +你也可以通过 Web 界面来完成上面的操作,先增加一个 Route,然后在插件页面中添加 `limit-req` 插件: - + Review Comment: I suggest removing the dashboard action. ########## docs/zh/latest/plugins/limit-req.md: ########## @@ -85,25 +91,27 @@ curl http://127.0.0.1:9080/apisix/admin/routes/1 -H 'X-API-KEY: edd1c9f034335f13 "upstream": { "type": "roundrobin", "nodes": { - "127.0.0.1:1980": 1 + "127.0.0.1:9001": 1 } } -}' +} ``` -你也可以通过 web 界面来完成上面的操作,先增加一个 route,然后在插件页面中添加 limit-req 插件: +你也可以通过 Web 界面来完成上面的操作,先增加一个 Route,然后在插件页面中添加 `limit-req` 插件: - + **测试插件** -上述配置限制了每秒请求速率为 1,大于 1 小于 3 的会被加上延时,速率超过 3 就会被拒绝: +上述配置限制了每秒请求速率为 `1`,大于 `1` 且小于 `3` 的请求会被加上延时,速率超过 `3` 就会被拒绝。 + +通过以下命令发送请求: ```shell curl -i http://127.0.0.1:9080/index.html ``` -当你超过,就会收到包含 503 返回码的响应头: +当请求速率超出限制时,返回如下包含 503 HTTP 状态码的响应头,插件生效: Review Comment: ```suggestion 当请求速率超出限制时,返回如下包含 `503` HTTP 状态码的响应头,插件生效: ``` ########## docs/zh/latest/plugins/limit-req.md: ########## @@ -225,7 +232,7 @@ curl http://127.0.0.1:9080/apisix/admin/routes/1 -H 'X-API-KEY: edd1c9f034335f13 }' ``` -移除 `consumer`上的 `limit-req` 插件 +类似的,通过以下命令移除 Consumer 上的 `limit-req` 插件: Review Comment: ```suggestion 你也可以通过以下命令移除 Consumer 上的 `limit-req` 插件: ``` ########## docs/zh/latest/plugins/limit-req.md: ########## @@ -182,20 +188,23 @@ curl http://127.0.0.1:9080/apisix/admin/routes/1 -H 'X-API-KEY: edd1c9f034335f13 **测试插件** -未超过 `rate + burst` 的值 +通过以下命令发送请求: ```shell curl -i http://127.0.0.1:9080/index.html -H 'apikey: auth-jack' +``` + +当请求速率未超过 `rate + burst` 的值时,返回 200 HTTP 状态码,说明请求成功,插件生效: Review Comment: ```suggestion 当请求速率未超过 `rate + burst` 的值时,返回 `200` HTTP 状态码,说明请求成功,插件生效: ``` ########## docs/zh/latest/plugins/limit-req.md: ########## @@ -23,25 +29,26 @@ title: limit-req ## 描述 -限制请求速度的插件,使用的是漏桶算法。 +`limit-req` 插件使用漏桶算法限制对用户服务的请求速率。 ## 属性 | 名称 | 类型 | 必选项 | 默认值 | 有效值 | 描述 | | ------------- | ------- | ------ | ------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------- | -| rate | integer | 必须 | | rate > 0 | 指定的请求速率(以秒为单位),请求速率超过 `rate` 但没有超过(`rate` + `burst`)的请求会被加上延时。 | -| burst | integer | 必须 | | burst >= 0 | 请求速率超过(`rate` + `burst`)的请求会被直接拒绝。 | -| key | string | 必须 | | ["remote_addr", "server_addr", "http_x_real_ip", "http_x_forwarded_for", "consumer_name"] | 用来做请求计数的依据,当前接受的 key 有:"remote_addr"(客户端 IP 地址), "server_addr"(服务端 IP 地址), 请求头中的 "X-Forwarded-For" 或 "X-Real-IP","consumer_name"(consumer 的 username)。 | -| rejected_code | integer | 可选 | 503 | [200,...,599] | 当请求超过阈值被拒绝时,返回的 HTTP 状态码。 | -| rejected_msg | string | 可选 | | 非空 | 当请求超过阈值被拒绝时,返回的响应体。 | -| nodelay | boolean | 可选 | false | | 如果 nodelay 为 true, 请求速率超过 `rate` 但没有超过(`rate` + `burst`)的请求不会加上延迟,如果是 false,则会加上延迟。 | -| allow_degradation | boolean | 可选 | false | | 当限速插件功能临时不可用时是否允许请求继续。当值设置为 true 时则自动允许请求继续,默认值是 false。| +| rate | integer | 是 | | rate > 0 | 指定的请求速率(以秒为单位),请求速率超过 `rate` 但没有超过(`rate` + `burst`)的请求会被加上延时。 | +| burst | integer | 是 | | burst >= 0 | 请求速率超过(`rate` + `burst`)的请求会被直接拒绝。 | +| key_type | string | 否 | "var" | ["var", "var_combination"] | 要使用的用户指定 `key` 的类型。 | +| key | string | 是 | | ["remote_addr", "server_addr", "http_x_real_ip", "http_x_forwarded_for", "consumer_name"] | 用来做请求计数的依据,当前接受的 `key` 有:"remote_addr"(客户端 IP 地址),"server_addr"(服务端 IP 地址), 请求头中的 "X-Forwarded-For" 或 "X-Real-IP","consumer_name"(consumer 的 username)。 | +| rejected_code | integer | 否 | 503 | [200,...,599] | 当超过阈值的请求被拒绝时,返回的 HTTP 状态码。 | +| rejected_msg | string | 否 | | 非空 | 当超过阈值的请求被拒绝时,返回的响应体。 | +| nodelay | boolean | 否 | false | | 如果设置为 true, 请求速率超过 `rate` 但没有超过(`rate` + `burst`)的请求不会加上延迟;如果设置为 false,则会加上延迟。 | Review Comment: ```suggestion | nodelay | boolean | 否 | false | | 如果设置为 `true`, 请求速率超过 `rate` 但没有超过(`rate` + `burst`)的请求不会加上延迟;如果设置为 `false`,则会加上延迟。 | ``` ########## docs/zh/latest/plugins/limit-req.md: ########## @@ -121,7 +129,7 @@ Server: APISIX web server </html> ``` -同时,如果你设置了属性 `rejected_msg` 的值为 `"Requests are too frequent, please try again later."`,当你超过,就会收到如下的响应体: +同时,如果你设置了属性 `rejected_msg` 的值为 `"Requests are too frequent, please try again later."`,当请求速率超出限制时,返回如下包含 503 HTTP 状态码的响应体,插件生效: Review Comment: ```suggestion 同时,如果你设置了 `rejected_msg` 属性的值为 `"Requests are too frequent, please try again later."`,当请求速率超出限制时,返回如下包含 `503` HTTP 状态码的响应体,插件生效: ``` ########## docs/zh/latest/plugins/limit-req.md: ########## @@ -23,25 +29,26 @@ title: limit-req ## 描述 -限制请求速度的插件,使用的是漏桶算法。 +`limit-req` 插件使用漏桶算法限制对用户服务的请求速率。 ## 属性 | 名称 | 类型 | 必选项 | 默认值 | 有效值 | 描述 | | ------------- | ------- | ------ | ------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------- | -| rate | integer | 必须 | | rate > 0 | 指定的请求速率(以秒为单位),请求速率超过 `rate` 但没有超过(`rate` + `burst`)的请求会被加上延时。 | -| burst | integer | 必须 | | burst >= 0 | 请求速率超过(`rate` + `burst`)的请求会被直接拒绝。 | -| key | string | 必须 | | ["remote_addr", "server_addr", "http_x_real_ip", "http_x_forwarded_for", "consumer_name"] | 用来做请求计数的依据,当前接受的 key 有:"remote_addr"(客户端 IP 地址), "server_addr"(服务端 IP 地址), 请求头中的 "X-Forwarded-For" 或 "X-Real-IP","consumer_name"(consumer 的 username)。 | -| rejected_code | integer | 可选 | 503 | [200,...,599] | 当请求超过阈值被拒绝时,返回的 HTTP 状态码。 | -| rejected_msg | string | 可选 | | 非空 | 当请求超过阈值被拒绝时,返回的响应体。 | -| nodelay | boolean | 可选 | false | | 如果 nodelay 为 true, 请求速率超过 `rate` 但没有超过(`rate` + `burst`)的请求不会加上延迟,如果是 false,则会加上延迟。 | -| allow_degradation | boolean | 可选 | false | | 当限速插件功能临时不可用时是否允许请求继续。当值设置为 true 时则自动允许请求继续,默认值是 false。| +| rate | integer | 是 | | rate > 0 | 指定的请求速率(以秒为单位),请求速率超过 `rate` 但没有超过(`rate` + `burst`)的请求会被加上延时。 | +| burst | integer | 是 | | burst >= 0 | 请求速率超过(`rate` + `burst`)的请求会被直接拒绝。 | +| key_type | string | 否 | "var" | ["var", "var_combination"] | 要使用的用户指定 `key` 的类型。 | +| key | string | 是 | | ["remote_addr", "server_addr", "http_x_real_ip", "http_x_forwarded_for", "consumer_name"] | 用来做请求计数的依据,当前接受的 `key` 有:"remote_addr"(客户端 IP 地址),"server_addr"(服务端 IP 地址), 请求头中的 "X-Forwarded-For" 或 "X-Real-IP","consumer_name"(consumer 的 username)。 | Review Comment: ```suggestion | key | string | 是 | | ["remote_addr", "server_addr", "http_x_real_ip", "http_x_forwarded_for", "consumer_name"] | 用来做请求计数的依据,当前接受的 `key` 有:"remote_addr"(客户端 IP 地址),"server_addr"(服务端 IP 地址), 请求头中的 `X-Forwarded-For` 或 `X-Real-IP`,`consumer_name`(Consumer 的 `username`)。 | ``` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
