サイズの大きなコンテンツの収容と送信
動画配信システムの特徴のひとつは、配信するコンテンツのファイルサイズが大きいことです。動画ファイルのサイズは、エンコード方式・帯域・画面サイズなどによって大きく変動しますが、例えば帯域1Mbpsで30分程度の動画であれば250MB程度になります。1本の映像でこの量ですから、大量の動画ライブラリを保有するサイトでは、それを収容するだけの大容量ストレージが必要になります。
また、動画配信サーバは、コンテンツをクライアントに向けて送出する役割を担います。特にアクセスの多いサイトでは多数のファイルを並行して送信することになります。したがって、配信サーバもそれを処理できるだけの高性能なものが必要になります。
さくらのクラウドでは、CPU・メモリ・ディスクのサイズを自由にカスタマイズできます。したがって、配信するコンテンツの本数やアクセス規模に合わせて、適切な性能のサーバを構築することができます。
長時間かつ広帯域を占有する映像コンテンツの配信処理
動画ファイルの配信におけるもうひとつの問題は、ネットワークの帯域を広く、しかも長時間にわたって占有することです。例えば帯域1Mbpsの動画を配信する場合、ネットワークが100Mbpsなら同時に100本送信できると思われるかもしれませんが、実際には同じネットワークに他の通信トラフィックも流れているので、もっと少ない本数しか送れません。
動画のトラフィックでネットワークが輻輳するようであれば、より広帯域なネットワークを敷設する必要があります。さくらのクラウドでは、ルータ+スイッチを用いることで最大3Gbpsのインターネット回線を構築可能です。これなら大規模な配信サイトにも対応できるでしょう。
同時アクセス数増加への対応
通常、配信する動画は日々追加され、それにアクセスするユーザも増えていきます。しかし、すべての動画が同じ回数アクセスされるわけではなく、よく再生される動画とあまり再生されない動画に分かれていきます。このような状況において、全配信サーバに全動画ファイルを収容すると膨大なストレージが必要になり、またコンテンツを更新する際も全配信サーバにファイルをコピーすることになるため、効率的とは言えません。
これに対する有効な策は、配信システムをオリジンサーバとキャッシュサーバに分けて構成することです。それぞれの役割を以下に示します。
・オリジンサーバ
・全映像ファイルを格納します。
・キャッシュサーバ経由でリクエストを受け、コンテンツを送信します。
・キャッシュサーバ
・クライアントからのリクエストを受け付けます。
・サーバ内にコンテンツがあればそれを送信します。
・コンテンツがないときはオリジンサーバから入手してクライアントに送信するとともに、
サーバ内にキャッシュします。
オリジンサーバは1-2台、キャッシュサーバは数台用意します。さくらのクラウドではサーバの追加/削除が簡単にできますので、アクセス数に応じて台数を加減できます。また、ロードバランサも装備していますので、キャッシュサーバの負荷分散も容易に設定できます。
