Gunicorn: Gunicorn v 19 memberikan timeout untuk Flask http get request yang membutuhkan waktu untuk dieksekusi

Dibuat pada 27 Apr 2019  ·  4Komentar  ·  Sumber: benoitc/gunicorn

Versi menggunakan: 19.7
Perintah Docker untuk memulai server:
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 "]

Rincian kesalahan :
Utas pekerja waktu tunggu kritis



502 Bad Gateway


Server mengembalikan respons yang tidak valid atau tidak lengkap.

Log cosole

NFO:root :DONE:: Jalankan operasi langkah dengan detail ::

| INFO:root :Mulai:: Istirahat GET metode dipanggil pada sistem eksternal

Sebelum tindakan lengkap di bawah pekerja baru datang :)

| [2019-04-27 10:11:00 +0000] [17] [INFO] Boot pekerja dengan pid: 17

Komentar yang paling membantu

Jika ada yang menghadapi masalah yang sama, silakan gunakan konfigurasi di bawah ini

**

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

**

mesin pelaksana. wsgi:aplikasi "]

Semua 4 komentar

Jika saya mengerti dengan benar, Anda mengatakan bahwa Anda memiliki permintaan HTTP masuk ke Gunicorn. Saat Anda menangani permintaan itu, pada gilirannya Anda membuat permintaan HTTP ke sistem eksternal, dan permintaan itu memakan waktu cukup lama hingga pekerja Anda kehabisan waktu (sistem eksternal tidak merespons sebelum pekerja Anda kehabisan waktu).

Jika itu yang terjadi, maka saya dapat memikirkan dua opsi:

1) Tingkatkan waktu tunggu pekerja Anda
2) Gunakan pekerja asinkron, seperti gevent sehingga permintaan eksternal Anda tidak menyebabkan batas waktu pekerja.

@vaibhavpatil123 akhirnya Anda dapat mencoba master juga karena cf8ac37ce41e530cc154f2c7cbccd84ccad4c242 telah digabungkan.

Beritahu kami

Akhirnya saya dapat memperbaiki masalah saya dan sekarang permintaan saya melalui server Flask dengan konfigurasi di bawah ini.

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

Jika ada yang menghadapi masalah yang sama, silakan gunakan konfigurasi di bawah ini

**

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

**

mesin pelaksana. wsgi:aplikasi "]

Apakah halaman ini membantu?
0 / 5 - 0 peringkat