AWS○×難易度 応用

ALB が時々 502 を返す問題を防ぐには、アプリのキープアライブのタイムアウトを、ALB のアイドルタイムアウトより短くしておくのがよい。

正答

× 誤り

解説

ALB はターゲットとの接続を使い回す。アプリのキープアライブのタイムアウトが ALB のアイドルタイムアウトより短いと、アプリが先に接続を閉じ、ALB がちょうどその接続に送ったリクエストが失敗して 502 になる。ターゲットが RST や FIN で接続を閉じたことは、ALB の 502 の典型的な原因として公式のトラブルシューティングにも挙がっている。対策は逆で、アプリ側のキープアライブを ALB のアイドルタイムアウト(既定 60 秒)より長くする。毎回ではなく時々出る 502 は、アプリのログに何も残らないことが多く、コードの不具合を探す前にタイムアウトの設定の食い違いを疑う。

参考: docs.aws.amazon.com

albhttp-502keep-aliveidle-timeouttroubleshooting

この問題を含む AWS のテストを制限時間つきで解く

AWSクイズへ