使用バージョン:19.7
サーバーを起動するDockerコマンド:
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 "]
エラーの詳細:
クリティカルタイムアウトワーカースレッド
コソールログ
| INFO:root :Start::外部システムで呼び出されたRESTGETメソッド
新しい労働者が来る以下の完全な行動の前に:)
| [2019-04-27 10:11:00 +0000] [17] [INFO] pidを使用した起動ワーカー:17
私が正しく理解していれば、Gunicornへの着信HTTPリクエストがあると言っています。 そのリクエストを処理すると、外部システムに対してHTTPリクエストが作成され、そのリクエストにはワーカーがタイムアウトするのに十分な時間がかかります(ワーカーがタイムアウトする前に外部システムが応答しません)。
それが起こっているのであれば、私は2つのオプションを考えることができます:
1)ワーカーのタイムアウトを増やす
2)外部リクエストによってワーカーがタイムアウトしないように、geventなどの非同期ワーカーを使用します。
@ vaibhavpatil123 cf8ac37ce41e530cc154f2c7cbccd84ccad4c242がマージされたので、最終的にマスターも試すことができますか。
我々に教えてください
最後に、問題を修正することができ、リクエストは以下の構成でFlaskサーバーを通過します。
CMD ["gunicorn"、 "--workers = 2"、 "-b 0.0.0.0:8080"、 " --timeout = 400"、 "-threads = 2"、 "-k = gevent" 、 "- log-level = INFO "、"executorengine。wsgi :app "]
同じ問題に直面している人がいる場合は、以下の構成を使用してください
****
****
executorengine。 wsgi:app "]
最も参考になるコメント
同じ問題に直面している人がいる場合は、以下の構成を使用してください
****
executorengine。 wsgi:app "]