Tengo bastante grandes y lentos (datos complejos, complejos frontend) de aplicaciones web construir en RoR
y servido por Puma
la nginx
proxy como inversa. Mirando el nginx
registro de errores, veo bastantes entradas como:
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"
Tengo curiosidad, ya que es muy poco probable que la página siga siendo la misma para diferentes usuarios y diferentes interacciones de los usuarios, y no creo que sea necesario / útil almacenar en búfer la respuesta en el disco.
Lo sé proxy_max_temp_file_size
y lo configuro en 0, pero me parece un poco incómodo (mi proxy intenta almacenar en búfer, pero no tiene ningún archivo donde almacenar ... ¿cómo puede ser más rápido?).
Mis preguntas son:
¿Cómo puedo eliminar la [advertencia] y evitar el almacenamiento en búfer de respuestas? ¿Es mejor apagar
proxy_buffering
o establecerproxy_max_temp_file_size
en 0? ¿Por qué?Si
nginx
almacena una respuesta: ¿Cuándo sirve la respuesta almacenada, a quién y por qué?¿Por qué se
nginx
enciendeproxy_buffering
por defecto y luego [te advierte] si en realidad amortigua una respuesta?¿Cuándo una respuesta activa esa opción? Cuando se tarda> unos segundos (¿cuántos?) Para servir la respuesta? ¿Es esto configurable?
TIA, ngw.