Định nghĩa của một vụ nổ trong cài đặt giới hạn Nginx là gì?


9

Sự khác biệt giữa cái này là gì:

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

và:

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

Tài liệu http://wiki.nginx.org/HttpLimitReqModule .

Câu trả lời:


1

Trong trường hợp của bạn:

cho phép trung bình không quá 30 yêu cầu mỗi giây, với các đợt không vượt quá 5 yêu cầu.

Tham khảo: http://nginx.org/en/docs/http/ngx_http_limit_Vq_module.html


2
Sử dụng từ được định nghĩa trong định nghĩa của nó không phải là rất hữu ích. "Bùng nổ" trong bối cảnh giới hạn là gì? (Các câu trả lời khác trả lời này)
Jahed

15

Như nó nói về sự bùng nổ trên http://nginx.org/en/docs/http/ngx_http_limit_Vq_module.html

Yêu cầu quá mức bị trì hoãn cho đến khi số lượng của chúng vượt quá kích thước cụm tối đa

Điều này có nghĩa là trong trường hợp của bạn, 5 yêu cầu đầu tiên được 'bỏ qua' và chỉ những yêu cầu 6 trở lên mới được tính. Vì vậy, theo yêu cầu 35, giới hạn 30 là đạt được. Sau đó, theo yêu cầu 36 trong cùng 1 giây đến từ cùng một nguồn gốc, nginx sẽ gửi phản hồi 503 thay vì xử lý yêu cầu thêm nữa.


6

Burst có nghĩa là nó sẽ bị trì hoãn trong giây tiếp theo, nếu có quá 30 yêu cầu / giây thì nginx gửi mã lỗi 503.

Burst hoạt động giống như một hàng đợi

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.