Qual é a definição de um burst na configuração Nginx limit_req?

9

Qual é a diferença entre isso:

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

Documentação link .

    
por Gajus 26.06.2013 / 10:05

3 respostas

1

No seu caso:

allow no more than 30 requests per second at an average, with bursts not exceeding 5 requests.

Referência: link

    
por 29.06.2013 / 04:05
15

Como se diz sobre o burst no link

Excessive requests are delayed until their number exceeds the maximum burst size

Isso significa que, no seu caso, as primeiras 5 solicitações são "ignoradas" e somente as solicitações 6 e superiores são contadas. Então, a pedido 35, o limite de 30 é atingido. Então, a pedido 36 dentro do mesmo 1 segundo vindo da mesma origem, o nginx enviará uma resposta 503 em vez de tratar o pedido mais adiante.

    
por 30.12.2014 / 18:40
6

Burst significa que ele será atrasado para o próximo segundo, se houver um excesso de 30 solicitações / segundo, em seguida, o nginx enviará o código de erro 503.

O burst funciona como uma fila

    
por 02.01.2014 / 14:14

Tags