Tôi có một (dữ liệu phức tạp, phức tạp frontend) khá lớn và chậm ứng dụng web xây dựng trong RoRvà phục vụ bởi Pumavới nginxproxy ngược lại. Nhìn vào nginxnhật ký lỗi, tôi thấy khá nhiều mục như:
2014/04/08 09:46:08 [warn] 20058#0: *819237 an upstream response is buffered to a temporary file
/var/lib/nginx/proxy/8/47/0000038478 while reading upstream,
client: 5.144.169.242, server: engagement-console.foo.it,
request: "GET /elements/pending?customer_id=2&page=2 HTTP/1.0",
upstream: "http://unix:///home/deployer/apps/conversationflow/shared/sockets/puma.sock:/elements/pending?customer_id=2&page=2",
host: "ec.reputationmonitor.it",
referrer: "http://ec.foo.it/elements/pending?customer_id=2&page=3"
Tôi khá tò mò vì rất có thể trang này vẫn giống nhau cho những người dùng khác nhau và các tương tác người dùng khác nhau và tôi không nghĩ rằng việc đệm phản hồi trên đĩa là cần thiết / hữu ích.
Tôi biết proxy_max_temp_file_sizevà đặt nó về 0, nhưng có vẻ hơi khó xử (proxy của tôi cố gắng đệm nhưng không có tệp nào để đệm đến ... làm sao có thể nhanh hơn?).
Câu hỏi của tôi là:
Làm cách nào tôi có thể xóa [cảnh báo] và tránh phản hồi đệm? Là tốt hơn để tắt
proxy_bufferinghoặc đặtproxy_max_temp_file_sizethành 0? Tại sao?Nếu
nginxbộ đệm một phản hồi: Khi nào nó phục vụ phản hồi được đệm, cho ai và tại sao?Tại sao
nginxbậtproxy_bufferingtheo mặc định và sau đó [cảnh báo] nếu bạn thực sự đệm phản hồi?Khi nào một phản ứng kích hoạt tùy chọn đó? Khi phải mất> vài giây (bao nhiêu?) Để phục vụ phản hồi? Đây có phải là cấu hình?
TIA, ngw.