Range オリジンフェッチは、Alibaba Cloud CDN のポイント・オブ・プレゼンス (POP) がオリジンフェッチ要求に HTTP Range ヘッダーを含める機能です。オリジンサーバーがこの要求を Alibaba Cloud CDN の POP から受信すると、HTTP 要求ヘッダー内の Range 情報に基づいて、リソースの指定された部分のみを返します。Range オリジンフェッチにより、ファイル配信効率が向上し、back-to-origin トラフィックおよびオリジンサーバーの負荷が低減され、リソースの応答時間が短縮されます。
背景情報
Range ヘッダーは、取得対象のリソースのどの部分を取得するかを指定する HTTP 要求ヘッダーです。たとえば、Range: bytes=0-100 は、ファイルの先頭 101 バイトを要求します。
Range オリジンフェッチを有効化した後、CDN がユーザーからの要求を受信した際、CDN の POP にリソースのキャッシュがない場合、またはキャッシュされたリソースの有効期限が切れている場合、CDN の POP は Range 要求を使用してオリジンフェッチを実行します。クライアントが要求したリソースの一部をセグメント単位でオリジンサーバーから取得し、CDN の POP にキャッシュします。
以下の図は、Range オリジンフェッチの動作を示しています。
注意事項
Range オリジンフェッチを有効化する前に、以下の点をご確認ください。
ご利用のオリジンサーバーが Range 要求に対応していることを確認してください。オリジンサーバーは Range ヘッダーを処理し、ステータスコード 206 Partial Content を返す必要があります。オリジンサーバーが Range 要求に対応していない場合、本機能を有効化するとキャッシュエラーまたはクライアント要求の失敗が発生する可能性があります。
Range オリジンフェッチは、CDN コンソールでデフォルトで無効になっています。
Multipart Ranges 機能はデフォルトで無効になっています。Range オリジンフェッチを有効化しても、Multipart Ranges は有効化されません。Multipart Ranges を有効化するには、チケットを送信してください。
レンジオリジンフェッチを有効にすると、オリジンリクエストのクエリ/秒 (QPS) が増加します。オリジンサーバーでレート制限が有効になっている場合、これにより制限が発動する可能性があります。これを防ぐには、CDN オリジンフェッチノードの IP アドレスを、DescribeL2VipsByDomain 操作を呼び出して取得できます。その後、CDN オリジンフェッチノードの IP アドレスをオリジンサーバーの IP アドレス許可リストに追加できます。
操作手順
CDN コンソール にログインします。
左側ナビゲーションウィンドウで、ドメイン名 をクリックします。
ドメイン名 ページで、対象のドメイン名を検索し、管理 をクリックします(操作 列)。
ドメインのナビゲーションウィンドウで、ビデオ関連 をクリックします。
範囲の Back-to-Origin セクションで、変更 をクリックします。
パラメーターの説明に基づき、以下のいずれかのオプションを選択します:無効、クライアントにマッチ、または 有効 (大容量ファイルシナリオに推奨)。
クライアントにマッチ または 有効 (大容量ファイルシナリオに推奨) を選択した場合、シャードサイズを設定できます。デフォルトのシャードサイズは 512 KB です。
パラメーター
オプション
説明
例
範囲の Back-to-Origin
無効
デフォルト設定は 無効 です。この設定では、クライアントが CDN の POP に対して Range 要求を送信したかどうかに関わらず、CDN の POP はオリジンサーバーからファイル全体を取得します。このため、大規模ファイルの配信効率が低下します。
たとえば、クライアントが CDN/ の POP に対して
Range: bytes=0-100を含む要求を送信した場合、CDN/ の POP は `Range` パラメーターなしでオリジンサーバーに要求を送信します。オリジンサーバーはファイル全体を CDN/ の POP に返却します。たとえば、ファイルサイズが 10 MB の場合、オリジンサーバーは 10 MB のファイルを CDN/ の POP に返却します。CDN/ の POP はファイルをキャッシュし、Range: bytes=0-100で指定された内容をクライアントに返却します。クライアントにマッチ
クライアントにマッチ を有効化すると、CDN の POP は、クライアントから Range 要求を受信した場合にのみ、オリジンサーバーに対して Range 要求を送信します。最初のオリジン要求では、CDN の POP がクライアントの要求から得た範囲サイズを、指定したシャードサイズの整数倍に切り上げて、オリジンサーバーに範囲を要求します。以降のすべてのオリジン要求では、CDN の POP は、ご指定のシャードサイズを使用します。
たとえば、シャードサイズが 512 KB であり、クライアントが CDN ノードに対して
Range:bytes=0-614399(600 KB)を含む要求を送信し、かつファイルが CDN ノードにキャッシュされていない場合、最初のオリジンフェッチでは 1024 KB のシャード(600 KB を 1024 KB に切り上げ)が取得されます。その後、このファイルの他の未キャッシュシャードに対するクライアントの要求では、CDN ノードが 512 KB のシャードサイズでオリジンサーバーにアクセスします。有効 (大容量ファイルシナリオに推奨)
有効 (大容量ファイルシナリオに推奨) を有効化すると、クライアントが CDN の POP に対して送信する要求に Range ヘッダーが含まれているかどうかに関わらず、CDN の POP は常に Range 要求を使用してオリジンフェッチを実行します。CDN の POP によるすべてのオリジンフェッチ Range 要求は、ご指定のシャードサイズに従ってオリジンサーバーからコンテンツをプルします。
該当なし
シャードサイズ
512 KB
1 MB
2 MB
4 MB
オリジンフェッチモードを クライアントにマッチ または 有効 (大容量ファイルシナリオに推奨) に設定した場合に、シャードサイズを設定できます。デフォルト値は 512 KB です。
1 MB
ルール条件
使用しない:ルール条件を使用しません。
ルール条件を追加または編集する場合は、Rules Engine で管理してください。
ルール条件は、ユーザー要求内のさまざまなパラメーターを識別し、構成がその要求に適用されるかどうかを判断します。
使用しない
OK をクリックします。