Quelle est la définition d'une rafale dans le paramètre Nginx limit_req?


9

Quelle est la différence entre cela:

limit_req_zone $binary_remote_addr zone=flood:10m rate=30r/s;
limit_req zone=flood nodelay

et:

limit_req_zone $binary_remote_addr zone=flood:10m rate=30r/s;
limit_req zone=flood burst=5 nodelay

Documentation http://wiki.nginx.org/HttpLimitReqModule .

Réponses:



15

Comme il est dit sur burst sur http://nginx.org/en/docs/http/ngx_http_limit_req_module.html

Les demandes excessives sont retardées jusqu'à ce que leur nombre dépasse la taille de rafale maximale

Cela signifie que dans votre cas, les 5 premières demandes sont «ignorées» et seules les demandes 6 et plus sont comptées. Donc sur demande 35 la limite de 30 est atteinte. Ensuite, à la demande 36 dans la même 1 seconde provenant de la même origine, nginx enverra une réponse 503 au lieu de traiter la demande plus loin.


6

Burst signifie qu'il sera retardé pendant la seconde suivante, s'il y a un excès de 30 requêtes / seconde, alors nginx envoie le code d'erreur 503.

Burst fonctionne comme une file d'attente

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.