2020.11.08
AWS
AWS ALB504エラー
簡単な動作テストでは問題なかったが、大量データ等でテストを行うと504 Gateway Time-outが表示されるようになった。 以下AWSの公式サイトの内容
HTTP 504: Gateway Timeout
考えられる原因:
・ロードバランサーは、接続タイムアウトが期限切れになる (10 秒) 前にターゲットへの接続の確立に失敗した。
・ロードバランサーはターゲットへの接続を確立したが、アイドルタイムアウト期間が経過する前にターゲットが応答しなかった。
・サブネットのネットワーク ACL で、ターゲットから一時ポート (1024-65535) のロードバランサーノードへのトラフィックが許可されなかった。
・ターゲットがエンティティ本文より大きな Content-Length ヘッダーを返した。ロードバランサーが欠落しているバイトを待機してタイムアウトした。
・ターゲットは Lambda 関数であり、接続タイムアウトが期限切れになる前に Lambda サービスが応答しませんでした。
今回の原因はサーバー側の処理が重くなることによってALBアイドルタイムアウトとなっていた。 ALBの属性で60秒になっているので90秒など確認しながら調整して改善できた(1~3,600秒まで可能)