¿Se puede indicar a NGINX que entregue un archivo a través de HTTP que está en proceso de creación?

¿Se puede indicar a NGINX que entregue un archivo a través de HTTP que está en proceso de creación?

Estoy usando NGINX como un componente en mi sistema que acepta contenido transmitido desde clientes (digamos, a través de RTMP) y lo pasa a algún servicio interno para su procesamiento. El servicio interno recupera el contenido de NGINX a través de HTTP.

Pero no quiero esperar hasta que el cliente haya transmitido completamente todo su contenido antes de comenzar a procesar, por lo que me gustaría que el servicio interno comience a buscar el contenido tan pronto como el primer byte esté disponible; el problema es que si el El cliente transmite más lento que la velocidad que el servicio interno puede extraer de NGINX (que siempre es el caso), NGINX llega al final actual del archivo y deja de servir el contenido.

¿Hay alguna manera de hacer que NGINX comience a servir un archivo cuyo tamaño final se desconoce (obviamente con Transfer-Encoding: fragmentado) y no finalice la conexión hasta que se hayan enviado todos los datos (aún por proporcionar)?

Intenté entregar el contenido de un FIFO, pero NGINX simplemente ignora el FIFO y devuelve 404 No encontrado. También miré el módulo NGINX HLS, pero parece requerir que los archivos estén en formato MPEG-4, lo cual no se aplica a mi caso de uso.

información relacionada