Gunicorn: Gunicorn v 19 otorga un tiempo de espera para la solicitud de obtención http de Flask, que tarda en ejecutarse

Creado en 27 abr. 2019  ·  4Comentarios  ·  Fuente: benoitc/gunicorn

Versión usando: 19.7
Comando Docker para iniciar el servidor:
CMD ["gunicorn", "--workers=2", "-b 0.0.0.0:8080","--keep-alive=900","--threads=3","--max-requests=5 ","--graceful-timeout=900", "--log-level=DEBUG","executorengine.wsgi :app "]

Error de detalles :
Subproceso de trabajador de tiempo de espera crítico



502 Puerta de enlace no válida


El servidor ha devuelto una respuesta no válida o incompleta.

Registros de Cosole

NFO:root :DONE:: Ejecutar operación de paso con detalles ::

| INFO:raíz :Inicio:: Descansar método GET invocado en sistema externo

Antes de completar la acción a continuación, viene un nuevo trabajador :)

| [2019-04-27 10:11:00 +0000] [17] [INFO] Trabajador de arranque con pid: 17

Comentario más útil

Si alguien enfrenta el mismo problema, use la siguiente configuración

**

  • [ ] CMD ["gunicorn", "--workers=2", "-b 0.0.0.0:8080","--timeout=400","--threads=2", "-k=gevent"," --nivel-de-registro=INFO","

**

motor ejecutor wsgi: aplicación "]

Todos 4 comentarios

Si entiendo correctamente, está diciendo que tiene una solicitud HTTP entrante para Gunicorn. Cuando maneja esa solicitud, a su vez realiza una solicitud HTTP a un sistema externo, y esa solicitud tarda lo suficiente como para que su trabajador agote el tiempo de espera (el sistema externo no responde antes de que su trabajador agote el tiempo de espera).

Si eso es lo que está pasando, entonces puedo pensar en dos opciones:

1) Aumente el tiempo de espera de su trabajador
2) Use un trabajador asincrónico, como gevent, para que su solicitud externa no provoque un tiempo de espera del trabajador.

@ vaibhavpatil123 , ¿puede probar el maestro también, ya que cf8ac37ce41e530cc154f2c7cbccd84ccad4c242 se ha fusionado?

Haznos saber

Finalmente, puedo solucionar mi problema y ahora mi solicitud pasa por el servidor Flask con la siguiente configuración.

CMD ["gunicorn", "--workers=2", "-b 0.0.0.0:8080"," --timeout=400","--threads=2", "-k=gevent" " ,"-- log-level=INFO","executorengine.wsgi :aplicación "]

Si alguien enfrenta el mismo problema, use la siguiente configuración

**

  • [ ] CMD ["gunicorn", "--workers=2", "-b 0.0.0.0:8080","--timeout=400","--threads=2", "-k=gevent"," --nivel-de-registro=INFO","

**

motor ejecutor wsgi: aplicación "]

¿Fue útil esta página
0 / 5 - 0 calificaciones