経緯
処理時間が60秒超えたら、504 Gateway timeout
が発生する
対応
対応1.
- Ec2に連結されているApplication Load Balancer の問題かと思い、
アイドルタイムアウト3600 秒
で設定する
対応2.
-
対応1
を行ってたら、3分後に同様のタイムアウトが発生する - ちなみにタイムオーバする処理でDuplicateエラーが発生してた(内部ロジックの都合)
対応3.
- ネッドで調べてみたら下記の設定で行っていた
proxy_read_timeout 300;
proxy_connect_timeout 300;
proxy_send_timeout 300;
対応4.
上司:サーバ設定は内容知った上で設定しましょ
-
proxy-connect-timeout
プロキシサーバの連結する時間 -
proxy-send-timeout
プロキシサーバにリクエストする時間 -
proxy-read-timeout
プロキシサーバから回答を待つ時間
うちらの場合、バックエンド側の処理が長かったので、アップロードや連結時間などは関係なかった
proxy_read_timeout 300;
こちらのみの設定で遠かった
追記
proxy_read_timeoutの基本設定が60秒だが、レスポンスがなければ1分間リトライしている模様リトライ3回行ってたらバックエンド動作が動いているかどうか関係なく接続を切る模様
2022/12/18 追加
- 上記の問題はブラウザーの問題でした。下記の記事を確認してほしいです