Qual è la definizione di burst nell'impostazione limit_req di Nginx?


9

Qual è la differenza tra questo:

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

e:

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

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

Risposte:



15

Come dice di burst su http://nginx.org/en/docs/http/ngx_http_limit_req_module.html

Le richieste eccessive vengono ritardate fino a quando il loro numero non supera la dimensione massima di burst

Ciò significa che nel tuo caso le prime 5 richieste vengono "ignorate" e vengono conteggiate solo le richieste da 6 in poi. Quindi su richiesta 35 viene raggiunto il limite di 30. Quindi, su richiesta 36 entro lo stesso 1 secondo proveniente dalla stessa origine, nginx invierà una risposta 503 invece di trattare ulteriormente la richiesta.


6

Burst indica che verrà ritardato per il secondo successivo, se sono presenti 30 richieste / secondo in eccesso, nginx invia il codice di errore 503.

Burst funziona proprio come una coda

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.