make limit_req to conform to the leaky bucket algorithm

This commit is contained in:
Igor Sysoev 2009-10-06 09:37:18 +00:00
parent a2951910d3
commit 5d4b802370

View File

@ -379,6 +379,11 @@ ngx_http_limit_req_lookup(ngx_http_limit_req_conf_t *lrcf, ngx_uint_t hash,
excess = lr->excess - ctx->rate * ngx_abs(ms) / 1000 + 1000;
if ((ngx_uint_t) excess > lrcf->burst) {
*lrp = lr;
return NGX_BUSY;
}
if (excess < 0) {
excess = 0;
}
@ -388,10 +393,6 @@ ngx_http_limit_req_lookup(ngx_http_limit_req_conf_t *lrcf, ngx_uint_t hash,
*lrp = lr;
if ((ngx_uint_t) excess > lrcf->burst) {
return NGX_BUSY;
}
if (excess) {
return NGX_AGAIN;
}