Was ist der Unterschied zwischen diesen:
limit_req_zone $binary_remote_addr zone=flood:10m rate=30r/s;
limit_req zone=flood nodelay
und:
limit_req_zone $binary_remote_addr zone=flood:10m rate=30r/s;
limit_req zone=flood burst=5 nodelay
Dokumentation http://wiki.nginx.org/HttpLimitReqModule .
Wie es über Burst auf http://nginx.org/en/docs/http/ngx_http_limit_req_module.html heißt
Dies bedeutet in Ihrem Fall, dass die ersten 5 Anforderungen "ignoriert" werden und nur die Anforderungen ab 6 gezählt werden. Auf Anfrage 35 ist also das Limit von 30 erreicht. Dann sendet nginx auf Anfrage 36 innerhalb derselben 1 Sekunde, die von demselben Ursprung kommt, eine 503-Antwort, anstatt die Anfrage weiter zu behandeln.
quelle
Burst bedeutet, dass es für die nächste Sekunde verzögert wird. Wenn mehr als 30 Anfragen pro Sekunde vorliegen, sendet nginx 503 Fehlercode.
Burst funktioniert wie eine Warteschlange
quelle