nginx 0.7 and limit_req
Igor Sysoev
is at rambler-co.ru
Wed Dec 10 10:32:14 MSK 2008
On Wed, Dec 10, 2008 at 05:36:22PM +1100, Omar Kilani wrote:
> I've recently started using the new limit_req module in nginx 0.7 to
> try to throttle requests to the API of our web service.
>
> We've been having some issues in that 'delayed' requests seem to be
> returned with a 503 HTTP response header, but with the correct body
> (the limit_req is under a 'location' block with proxy_pass).
The 503 response should have special body.
> The configuration is:
>
> limit_req_zone $binary_remote_addr zone=api_one:10m rate=1r/s;
>
> location /services/rest {
> limit_req zone=api_one burst=5;
> proxy_pass http://rtm_api;
> ...
> }
>
> My intention is to limit requests to an average of 1 request a second,
> burstable to 5 requests, and supporting delaying requests until
> they're within that 1 request / second threshold.
>
> Is the 503 response a known issue?
limit_req delays excess request until they wil be more than burst value.
This means that if you send 6 simultaneous requests, then 1 will be
processed, next 4 will be delayed for 1s, 2s, 3, and 4s, and 6th will be
reject with 503 code.
> Also, could you tell me how to test this particular configuration to
> make sure it's correct?
>
> I've tried ab/http_load/siege, etc.
--
Igor Sysoev
http://sysoev.ru/en/
More information about the nginx
mailing list