Acho limit_req
documentação suficientemente clara.
burst
está documentado dessa forma:
Excessive requests are delayed until their number exceeds the maximum burst size [...]
nodelay
está documentado dessa forma:
If delaying of excessive requests while requests are being limited is not desired, the parameter nodelay should be used
As solicitações são limitadas para se ajustarem à taxa definida. Se as solicitações forem recebidas em uma taxa mais alta, não será atendido mais do que o número definido de solicitações por unidade de tempo . Você então precisa decidir o que fazer com essas outras solicitações.
- Por padrão (não
burst
, nonodelay
), as solicitações são negadas com um erro HTTP 503. - Com
burst
, você empilha o número definido de solicitações em uma fila de espera, , mas não as processa mais rápido que a taxa de solicitações por unidade de tempo . - Com
burst
enodelay
, a fila não estará esperando e as solicitações serão processadas imediatamente .