大容量ファイル配信でのフェイルモード

      Last updated July 21, 2020

    セグメントキャッシュを有効にしていない場合、大容量のファイルを配信する際に以下のフェイルモードが発生する可能性があります。

    ファイルサイズの上限

    オリジンからのレスポンスの Content-Length ヘッダーの値が配信可能なファイルサイズの上限を超えている場合、Fastly は 503 Response object too large をクライアントに返却します。レスポンスに Content-Length ヘッダーが含まれない場合、Fastly はレスポンスボディの取得を開始します。取得中にファイルサイズ上限に達したこと検知すると 503 Response object too large をクライアントに返却します。

    Content-Length ヘッダーが存在せず ストリーミングミス が有効になっている場合、Fastly はコンテンツを取得しながら同時にクライアントに返却しますが、取得中にファイルサイズ上限に達したこと検知するとクライアント接続を即座に切断します。この時コネクションは 0-length チャンクで正しく切断されないため、クライアントはプロトコル違反を検知します。

    オリジンの読み込みエラー

    オリジンからのレスポンス取得時にエラー、またはタイムアウトが発生した場合、ストリーミングミスを有効にしているかどうかによって問題は異って報告されます。ストリーミングミスを利用していない場合は 503 レスポンス が生成されます。ストリーミングミスを利用している場合、レスポンスヘッダーはすでにクライアントに送信されてしまっているため、エラーを送るには遅すぎます。この場合、Fastly は接続を即座に切断し、クライアントはプロトコル違反を検知します。レスポンスがチャンク形式の場合、クライアントが正しく 0-length チャンクを受け取ることなく接続が切断されます。Content-Length が通知されている場合、クライアントがすべてのバイトを受け取る前に接続が切断されます。

    Back to Top