Giả sử tôi đặtNginx # ngx_http_limit_req_module: Trong bao lâu là 503 trả lại một lần vượt quá tỷ lệ?
limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s;
server {
location/{
limit_req zone=one burst=5 nodelay;
}
Sau đó cho 5 giây, tôi gửi 10 yêu cầu mỗi giây.
Yêu cầu nào sẽ thấy 200
và yêu cầu nào sẽ thấy 503
?
Đây có phải là yêu cầu đầu tiên trong số 10 yêu cầu không?
Hoặc không nginx
theo dõi người dùng xấu liên tục gửi yêu cầu và trong trường hợp này chỉ 50 yêu cầu đầu tiên sẽ nhận được 200
?
Tôi nghĩ rằng 'burst' là vô nghĩa nếu' nodelay' là bộ. Tôi đã hiểu sai? – oldergod
Nó không phải là vô nghĩa. 'burst' xác định số lượng yêu cầu mà một khách hàng có thể thực hiện vượt quá' tỷ lệ' được chỉ định. Về thuật toán thùng rò rỉ, đó là khả năng của xô. – VBart
'nodelay' chỉ định nghĩa những yêu cầu quá mức này có bị trì hoãn hay không. – VBart