8

次の Procfile を使用して、heroku でホストされているフラスコソケットアプリがあります。

web: gunicorn --worker-class eventlet hello:app

socketio に切り替えて以来、アプリの動作に一貫性がありません。以前は、アプリがしばらく実行された後、POST リクエストがタイムアウトし始めていました。

昨日の夜から、エラーが発生し続けます

sock=backend at=error code=H18 desc="Server Request Interrupted" method=GET path="/static/js/third-party/browser.js" host=deard.herokuapp.com request_id=725da6af-aa29-4293-a411-2c89977f1d4d fwd="216.165.95.0" dyno=web.1 connect=1ms service=36ms status=503 bytes=13811

「バックエンドが HTTP 応答を返す前に、アプリの Web プロセスに属するバックエンド ソケットが閉じられました」という heroku エラー コードの説明を読みました。

しかし、なぜこれが起こるのか、私には見当がつきません。

何を調べるべきかについての手がかりは、これをデバッグするのに役立ちます。

コードを共有することはできますが、そのコードは 300 行の長さであり、エラーの原因がどこにあるのかわからないため、参考になるかどうかわかりません。

4

2 に答える 2

0

これは私のために働いた:

from waitress import serve
# app.run(host='0.0.0.0', port=port) # <---- REMOVE THIS
# serve your flask app with waitress, instead of running it directly.
serve(app, host='0.0.0.0', port=port) # <---- ADD THIS

于 2020-07-22T22:02:54.030 に答える