Điểm:0

Is rate limiting delay included in nginx $request_time?

lá cờ cn

If requests are delayed by nginx rate limiting (rate limit exceeded, but within burst rate), is this delay included in the nginx $request_time total?

The nginx docs state that $request_time is "time elapsed since the first bytes were read from the client"

If a request is delayed, is that before or after request bytes are read from the client? I assume after, since rate limiting can be based on request headers, etc.

Is there a way to separate total request time and time spent specifically on sending/receiving network communication to/from the client?

Note: I am aware of $upstream_response_time, and am logging that. I specifically am concerned with differentiating specific operations within nginx (caching, rate limiting, etc), and client-side network communications.

Điểm:0
lá cờ cn

Vì vậy, trong thử nghiệm của tôi, nginx $request_time khai thác gỗ làm phản ánh sự chậm trễ do giới hạn tốc độ.

Khách hàng:

wrk --timeout 20s -d 20 -t 79 -c 80 https://zapazoid.vistashare.net/Static/jquery.jnotify-1.1.min.js

cấu hình:

nốt sần bị xóa khỏi giới hạn tốc độ tĩnh và giới hạn tốc độ thành 1r/s, bật đặt thành 80r/s.

Kết quả kiểm tra:

⯠wrk --timeout 20s -d 20 -t 79 -c 80 https://zapazoid.vistashare.net/Static/jquery.jnotify-1.1.min.js
Chạy thử nghiệm độ tuổi 20 @ https://zapazoid.vistashare.net/Static/jquery.jnotify-1.1.min.js
  79 chủ đề và 80 kết nối
  Thống kê chủ đề Trung bình Stdev Max +/- Stdev
    Độ trễ 9,97 giây 5,97 giây 19,93 giây 56,10%
    Yêu cầu/giây 0,27 1,57 10,00 97,56%
  41 yêu cầu trong 20,10 giây, 140,14KB đã đọc
Yêu cầu/giây: 2,04
Truyền/giây: 6,97KB

Nhật ký Nginx cho thấy các yêu cầu bị trì hoãn:

29/11/2021 15:40:23 [cảnh báo] 2608#2608: *355 trì hoãn yêu cầu, vượt quá: 78.992, theo vùng "static-corp", máy khách: 10.100.2.130, máy chủ: zapazoid.vistashare.net, yêu cầu: "NHẬN /Static/jquery.jnotify-1.1.min.js HTTP/1.1", máy chủ lưu trữ: "zapazoid.vistashare.net"

Ghi nhật ký truy cập được định cấu hình là:

    log_format apm '$remote_addr - $remote_user [$time_local] '             
                   '"$request" $status $body_bytes_sent '                   
                   '"$http_referer" "$http_user_agent" '                    
                   '$request_time $upstream_response_time '                 
                   '$upstream_cache_status';

và nhật ký truy cập cho thấy leo núi $request_time giá trị (giá trị thứ 3 từ cuối), vì các yêu cầu ngày càng bị trì hoãn để rơi vào giới hạn được định cấu hình:

10.100.2.130 - - [29/Nov/2021:15:46:51 -0500] "NHẬN /Static/jquery.jnotify-1.1.min.js HTTP/1.1" 200 3098 "-" "-" 0,001 0,004 BỎ LỠ
10.100.2.130 - - [29/11/2021:15:46:51 -0500] "NHẬN /Static/jquery.jnotify-1.1.min.js HTTP/1.1" 200 3098 "-" "-" 0,496 0,000 BỎ LỠ
10.100.2.130 - - [29/11/2021:15:46:52 -0500] "NHẬN /Static/jquery.jnotify-1.1.min.js HTTP/1.1" 200 3098 "-" "-" 0,995 0,000 BỎ LỠ
10.100.2.130 - - [29/Nov/2021:15:46:52 -0500] "NHẬN /Static/jquery.jnotify-1.1.min.js HTTP/1.1" 200 3098 "-" "-" 1.495 0.000 BỎ LỠ
10.100.2.130 - - [29/Nov/2021:15:46:53 -0500] "NHẬN /Static/jquery.jnotify-1.1.min.js HTTP/1.1" 200 3098 "-" "-" 1.999 0.000 BỎ LỠ
10.100.2.130 - - [29/Nov/2021:15:46:53 -0500] "GET /Static/jquery.jnotify-1.1.min.js HTTP/1.1" 200 3098 "-" "-" 2.495 0.004 BỎ LỠ
...
10.100.2.130 - - [29/Nov/2021:15:47:02 -0500] "GET /Static/jquery.jnotify-1.1.min.js HTTP/1.1" 200 3098 "-" "-" 11.467 0.000 BỎ LỠ
10.100.2.130 - - [29/11/2021:15:47:03 -0500] "NHẬN /Static/jquery.jnotify-1.1.min.js HTTP/1.1" 200 3098 "-" "-" 11.964 0.000 BỎ LỠ
10.100.2.130 - - [29/11/2021:15:47:03 -0500] "NHẬN /Static/jquery.jnotify-1.1.min.js HTTP/1.1" 200 3098 "-" "-" 12.466 0,004 BỎ LỠ
10.100.2.130 - - [29/tháng 11/2021:15:47:04 -0500] "NHẬN /Static/jquery.jnotify-1.1.min.js HTTP/1.1" 200 3098 "-" "-" 12.963 0.000 BỎ LỠ
10.100.2.130 - - [29/11/2021:15:47:04 -0500] "NHẬN /Static/jquery.jnotify-1.1.min.js HTTP/1.1" 200 3098 "-" "-" 13.460 0.000 BỎ LỠ
10.100.2.130 - - [29/Nov/2021:15:47:05 -0500] "NHẬN /Static/jquery.jnotify-1.1.min.js HTTP/1.1" 200 3098 "-" "-" 13.961 0.000 BỎ LỠ
10.100.2.130 - - [29/Nov/2021:15:47:05 -0500] "NHẬN /Static/jquery.jnotify-1.1.min.js HTTP/1.1" 200 3098 "-" "-" 14.452 0.000 BỎ LỠ
10.100.2.130 - - [29/Nov/2021:15:47:06 -0500] "NHẬN /Static/jquery.jnotify-1.1.min.js HTTP/1.1" 200 3098 "-" "-" 14.946 0.000 BỎ LỠ
10.100.2.130 - - [29/11/2021:15:47:06 -0500] "NHẬN /Static/jquery.jnotify-1.1.min.js HTTP/1.1" 200 3098 "-" "-" 15.446 0.000 BỎ LỠ

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.