グローバルCDN配信 — Cloudflareエッジ300拠点超、サブ秒TTFB

グローバルCDN配信

AVCaptionはオブジェクトストレージにCloudflare R2、配信にCloudflareのグローバルCDNを採用しています。これは公開インターネットの20%を支える同じネットワーク — 300以上の都市、ほとんどの人口密集地域へ1桁ミリ秒のレイテンシ、実戦で鍛えられたキャッシュインフラです。

配信の仕組み

  1. アップロード — エンコード済みHLSセグメントがCloudflare R2バケットに書き込まれます。R2はCF CDNエッジへのegress料金がゼロです。
  2. 事前ウォーミング — エンコード完了時、AVCaptionは主要リージョンからマスタープレイリストと最初のセグメントをpingし、最初の視聴者が来る前にエッジキャッシュを準備します。
  3. 視聴者の要求 — プレーヤーがセグメントURLを要求します。Cloudflareエッジノードがそれを受け取ります。
  4. キャッシュヒット — このエッジにセグメントがキャッシュされていれば(リージョン内最初の視聴者が取得後)、即座に提供されます。TTFB100ms未満。
  5. キャッシュミス — エッジがR2オリジン(これもCloudflare内部 — インターネットホップなし)から取得し、セグメントをキャッシュ。リージョン内の以後の視聴者はキャッシュにヒットします。

HLSセグメントがキャッシュに向く理由

HLSセグメント不変 です — 各セグメントは位置と内容に基づく固有のURLを持ち、変わりません。これにより:

  • 長いキャッシュTTL(数か月)が安全 — コンテンツが古くなりません。
  • キャッシュ無効化はほとんど不要 — アップロードは新URLを作るだけで上書きしません。
  • 人気動画のCDNキャッシュヒット率は安定して95%超。

Webページとは根本的に異なります — ページキャッシュは複雑になりますが、動画セグメントは易しいケースです。(ストリーミングでエッジキャッシュが重要な理由は CDN vs オリジン を参照。)

リージョンカバレッジ

Cloudflare CDNのPOPは以下に存在します:

  • 北米 — 米国・カナダの主要都市、東西海岸の濃密カバレッジ
  • EU — すべての主要首都に加え独・仏・英・蘭のノード
  • APAC — 東京、シンガポール、香港、ソウル、ムンバイ、シドニー、ジャカルタ
  • 南米 — サンパウロ、ブエノスアイレス、ボゴタ、リマ
  • アフリカ — ラゴス、ヨハネスブルク、カイロ、ナイロビ
  • 中東 — ドバイ、リヤド、テルアビブ

コールドスタートTTFB(平均):

  • 北米 / EU: 100–150ms
  • 東アジア: 150–200ms
  • 南米 / オーストラリア: 200–300ms
  • アフリカ / 中東: 250–400ms

キャッシュ階層の優先度

有料プラン(Premium / Enterprise)はデフォルトで優先キャッシュプールに書き込みます——セグメントは標準のCloudflare LRU退避ポリシーの下でエッジに長く居続け、TTLも長めです。

Freeプランの動画は低優先度のプールを共有します:キャッシュヒットしている間はエッジから配信されますが、キャッシュ圧がかかればLRUで早めに退避されます。Freeプランの動画でもヒット率が昇格しきい値を超える(実需の兆候)と、自動で優先プールに昇格します——Freeプランで動画がバズっても、パターンが検出されれば高速配信に切り替わります。

手動設定はありません。昇格は自動、退避は低優先度プール上での標準的なLRU動作です。

帯域コスト

帯域は全有料プランに含まれます。配信GB単位の課金なし、バイラル時の請求サプライズなし、超過階段なし。5TBごとの定額料金がストレージ + 帯域をカバーします。

分単位や配信GB単位のプラットフォーム(Mux、CF Stream、Bunny)とは大きく異なります。コストの予測可能性が肝心です。

他のCDN前提プラットフォームとの比較

  • Cloudflare Stream — 下層は同じCFインフラ。AVCaptionは暗号化、カスタムプレーヤー、AI字幕、定額料金を上に重ねます。
  • Bunny CDN — Bunny独自CDN(119拠点超)。Cloudflareより範囲は狭いがBunnyが優先する地域では優秀。
  • Mux — Fastlyと自社配信を併用。業界トップレベルのQoE最適化、リージョンカバレッジは同等。

はじめる

どの動画も自動的にCF CDNを使います——設定は不要です。代表的な動画をアップロードし、いくつかの地理的VPN出口からネットワークタブを確認してください。各リージョンでのTTFBの差を見れば、自分でリージョンを選ばなくても、視聴者が体験している遅延が分かります。

よくあるご質問

動画CDNとは何で、なぜ必要ですか? +
動画CDN(Content Delivery Network)は、世界中のエッジサーバーで動画セグメントをキャッシュし、視聴者が自社のオリジンサーバーではなく近い拠点から取得できるようにします。HLSストリーミングでは必須で、1時間の動画は1人当たり数百の小さなセグメント要求になり、オリジンのみの配信では遅く高コストになります。AVCaptionはCloudflareのCDNと300拠点超のエッジPOPを使用 — 世界中でサブ秒TTFB、追加設定なし。
動画セグメントの典型的なTTFBはどれくらいですか? +
世界中のキャッシュヒットで300ms未満、北米・EU・東アジアでは150ms未満。最初のセグメントはアップロード時に事前ウォーミングされるため、コールドスタート再生がオリジン取得を待つことはほとんどありません。
動画セグメントはCDNエッジでキャッシュされますか? +
はい。HLSセグメントは不変(各セグメントURLにコンテンツハッシュを含む)なので、長いTTLで強力にキャッシュされます。あるリージョンで一度取得されれば、そのリージョンの後続視聴者は全員エッジから取得します。
グローバルCDNはGB単位の帯域料金がかかりますか? +
多くの動画プラットフォームはそうです — Mux、CF Stream、Bunnyはいずれも配信GB単位や視聴分単位で課金します。AVCaptionは帯域をプランごとの定額に含めます。バイラル動画でも請求が突然跳ね上がることがなく、コース制作者やSaaSオーナーの長期コストが予測可能になります。
← content.back_to_index