メインコンテンツへスキップ

コンテンツデリバリネットワーク (CDN)

CDN とは何ですか?

CDN、つまりコンテンツデリバリネットワークは、あなたのコンテンツを地理的にエンドユーザーに配信するために使用されるサービスです。 コンテンツの読み込み時間を短縮することで、パフォーマンスを向上させるのに役立ちます。

CDN は、さまざまな地理的位置に戦略的に配置された複数のサーバーにコンテンツを配布することによって機能します。 この配布により、コンテンツがユーザーに物理的に近いサーバーから配信され、データが移動しなければならない距離が短縮されます。 これにより、コンテンツの配信を CDN サーバーにオフロードすることにより、オリジン(あなたの Owncast サーバー)の負荷を軽減するのに役立ちます。

CDN はコンテンツを保存するためにキャッシングを使用します。 ユーザーが CDN サーバーに既にキャッシュされているコンテンツをリクエストすると、それをオリジンサーバーから取得する必要なく迅速に配信されます。 このキャッシングメカニズムは、コンテンツの全体的な速度と応答性を向上させます。

キャッシングに加えて、CDN はデータ圧縮や DDoS 保護などのセキュリティ対策といった他の最適化機能も提供する場合があります。 これらの追加機能は、ウェブサイトやウェブアプリケーションのパフォーマンス、スケーラビリティ、および可用性のさらなる向上に寄与します。

これがあなたの Owncast ストリームにどのように役立つのでしょうか?

CDN をあなたの Owncast インスタンスの前に置くことで、実際のサーバーから地理的に遠く離れた視聴者にとって便利です。これにより、動画のストリーミング速度が遅くなる可能性があり、バッファリングやその他の問題を引き起こす可能性があります。

さらに、あなたの全体の Owncast ウェブページは、静的アセット(CSS、JavaScript、画像など)をキャッシュして提供するため、すべての訪問者に対してより速く読み込まれます。

ストレージプロバイダーと CDN の違いは何ですか?

CDN は、ユーザーに近いサーバーからコンテンツをキャッシュして配布することで、配信パフォーマンスを向上させ、レイテンシーを減少させるように設計されています。 ストレージプロバイダーは、データを保存するためのスケーラブルで信頼性の高いストレージインフラを提供することに焦点を当てています。 機能が重複する場合がある一方で、それらの主な目的や機能はお互いを区別する要素です。

CDN とストレージプロバイダーは異なるサービスですが、一部のオブジェクトストレージプロバイダーは、使用可能な CDN を提供する場合があります。

Owncast と CDN をどのように利用できますか?

すべての CDN プロバイダーおよび設定の詳細に入るのは不可能ですが、あなたの Owncast インスタンスの前に CDN を追加するために必要な高レベルの手順を以下に示します。

ストレージプロバイダーなしで

  1. あなたの実際の Owncast サーバーは、CDN における "オリジン" として知られ、あなたの Owncast インスタンスにアクセスするために使用するのとは異なるパブリックに利用可能なホスト名が必要です。 たとえば、視聴者が https://owncast.example.com であなたの Owncast インスタンスにアクセスできるようにしたい場合、owncast-origin.example.com のような新しいホスト名を作成し、それをあなたの Owncast サーバーにポイントする必要があります。
  2. CDN の設定で、owncast-origin.example.com をあなたの Owncast インスタンスのオリジンとして使用するように指示する必要があります。
  3. あなたの Owncast ホスト名を CDN に指すように DNS 設定を更新する必要があります。 たとえば、あなたが https://owncast.example.com で Owncast インスタンスにアクセスする場合、owncast.example.com を実際のサーバーではなく CDN に指すように DNS 設定を更新する必要があります。
  4. Visit your Owncast admin and go to Configuration > Server Setup. On the Server Config tab, under Advanced Settings, set the "Websocket host override" to the origin URL you created in step 1. For example, https://owncast-origin.example.com. The field takes a regular http:// or https:// URL and the web player converts it to a websocket connection. このステップを実行しないと、チャットはウェブソケットを通じてのパスをサポートしていない CDN プロバイダーにアクセスできなくなります。 See the server setup documentation for more about these settings.

外部ストレージプロバイダーとの場合

  1. この設定では、ストレージプロバイダーがオリジンサーバーとなり、あなたの Owncast サーバーではありません。
  2. プロバイダーからストレージバケットのエンドポイントホスト名を取得してください。
  3. CDN の設定で、ストレージプロバイダーのホスト名をオリジンサーバーとして使用するように指示する必要があります。
  4. In the Owncast admin go to Configuration > Server Setup. On the Server Config tab, under Advanced Settings, set the "Serving Endpoint" to the full URL of your CDN deployment. For example, https://cdn.example.com. See the server setup documentation for more about these settings.

考慮すべき点

  • あなたの Owncast サーバー(オリジンサーバー)は、CDN があなたのコンテンツにアクセスし、視聴者に配信するのに十分な速度のネットワーク上に存在している必要があります。 単に CDN を追加することでは、あなたの Owncast のネットワークが自動的に速くなるわけではありませんが、キャッシングを通じてサーバーのネットワーク負荷を軽減することはあります。
  • 場合によっては、CDN を Owncast サーバーの前に置くことで、視聴者数を正確にカウントすることがより難しくなることがあります。 これは、あなたが考慮する必要があるトレードオフです。 一般的に、視聴者が少ない場合、実際の視聴者数よりも高い視聴者数を報告し(複数の CDN サーバーがコンテンツを取得するため)、ユーザー数が多い場合には実際の視聴者数よりも少ない視聴者数を報告します(複数の視聴者が同じキャッシュされたコンテンツを見るため)。
  • 視聴者が多いほど、CDN はより有用になります。 視聴者が少ない場合、すべてのリクエストはおそらくオリジンサーバーにヒットするため、CDN はそれほど有用ではなく、場合によっては追加のネットワークホップを必要とするため、視聴者にとって有害になる可能性があります。 CDN 統計を参照して、CDN キャッシュから提供されるリクエスト(ヒット)とオリジンサーバーから提供されるリクエスト(ミス)の数を確認してください。

Improve this page

See something missing or incorrect? Edit this page and improve the documentation for everyone.

Contributors to this documentation