経緯
IBM Cloud Internet Services(CIS)を使っているとき、オリジンのサービスでリクエストを受け付けてから応答を返すまでに時間がかかるとき、Error 524が発生する場合があります。
原因ですが、CISではリクエストを送信してからレスポンスの受信を開始するまでのタイムアウト時間が100秒となっており、それを超えてしまっているからだと考えられます。
この事象は、アプリケーションがリクエストを受け付けてから巨大なファイルをサーバ側で生成し、生成が終わってからダウンロードが開始されるような仕組みにしている際によく見られます。ダウンロード開始までに100秒を超えてしまったということです。
対応
そもそもそのようなアプリケーションの作りをすべきでないのですが、今からアプリケーションを直すのが難しい場合、上限はありますがタイムアウト時間を伸ばすことができます。
CISのベースであるCloudflareのドキュメントに次の記述があります。
Enterpriseプランのお客様は、524秒のタイムアウトを600秒まで伸ばすことができます。
IBM Cloudの場合、CASEでサポートに依頼することで延長が可能です。
CASEでチケットを起票する際、次の情報を含めてください。
- 対象CISのCRN
- 対象ドメインID
- 延長時間
CRNとドメインIDはCISの管理画面で確認することができます。
注意点
- Enterpriseプラン以上が必要です
- 上限は600秒(10分)です
- チケット起票から対応まで時間がかかる場合があります
- 本来的にはアプリケーションの作りを見直すべきです