Amazon CloudFront とは
Amazon CloudFront(以下CloudFront)は、HTMLファイル、CSS、画像、動画といった静的コンテンツやストリーミングといった動的コンテンツをキャッシュし、オリジンサーバー(本来のアクセス先)の代わりに配信する、AWSのCDNサービスです。
CloudFrotでは、エッジローケーションと呼ばれるデータセンターを通じてコンテンツ配信が行われます。世界中に120を超えるエッジローケーションがあり、CloudFront を使うと、ユーザーから最も近いエッジローケーションからコンテンツを配信できます。
例えば、日本のユーザーが北米にあるサーバーにアクセスすることを考えてみましょう。
CloudFront を使わない場合、エンドユーザーは、オリジンサーバーとなる北米にあるサーバーにアクセスすることになります。距離遅延としては、180ミリ秒くらいありレスポンスが非常に遅いです。
CloudFront を使う場合、エンドユーザーは最寄りの CloudFront に接続できます。日本のユーザーは日本にある CloudFront にアクセスができるため、距離遅延を非常に小さく抑えられます。
※ 実際の距離遅延は、利用している回線や利用状況によっても変動します。
CoudFront ですが、代表的なところですと、以下のようなサービスで利用されています。
Amazon Prime Video
- NFLのサーズデーナイトフットボールを、世界200カ国以上でスムーズに配信するためにCloudFrontを利用
- 遅延の少ないライブ映像を提供することができるため、ユーザーに最新の試合の様子を迫力のある状態で提供
Hulu
- CloudFrontをはじめとしたAWSのインフラストラクチャーで、定額制動画配信サービスライブ映像を配信
- 急に視聴者が増えてトラフィック量が増大したとしても、スムーズにサービスを提供が可能
CloudFront の構成
CloudFront には、以下の構成要素があります。
1. バックエンド
- オリジンサーバーのことを言います。
- オリジンサーバーとして、ELB、 EC2、 S3、 オンプレのサーバーを指定できます。
- URLのパスに応じて、異なるオリジンサーバーを指定することも可能となります。
- これにより、1つのドメインで複数のサービスを提供することも可能となります。
2. エッジサーバー
- CloudFront のことを言います。
3. キャッシュ
- ユーザーからリクエストを受けたエッジサーバーは、要求されたファイルが自分の中にキャッシュとしてあるかを確認します。
- キャッシュとしてない場合、オリジンサーバからファイルを取得し、それをキャッシュとして保持します。
4. キャッシュルール
- 拡張子やURLパス毎に、キャッシュ期間を指定するとこが可能となります。
- デフォルトでは24時間キャッシュが保持されます。
具合的に何ができるのか?
CloudFront を利用すると、オリジンサーバーの代わりに、ユーザーに対してレスポンスを返すことができます。これにより、以下のメリットがあります。
ユーザーへのコンテンツ配信
- 静的ファイルや動的ファイルを、ユーザーに最も近いサーバーから配信できる。
ストリーミングの配信
- 動画や音声といったストリーミングデータの配信を、ユーザーから最も近いサーバーから行える。
- Adobe MEdia Serverなど複数の製品に対応している。
CDNデータキャッシュ
- 初回のアクセスの際に、オリジンサーバから取得したコンテンツをキャッシュする。
- 次回以降は、キャッシュの期限が切れるまで、キャッシュしたコンテンツを配信する。
エッジセキュリティー
- AWSのさまざまな組み込み保護機能を利用可能となり、ネットワークレベル、アプリケーションレベルの両方でのセキュリティーが提供される。
- オリジンサーバーを、DDOS攻撃から守ることができる。
レポーティング
- キャッシュが使われた割合やエラー率といった統計情報を、レポートとして参照できる。
CloudFront を利用することにより、以下の4つの課題を解決できます。
・サーバーの負荷
画像や動画など、ファイルサイズが大きいコンテンツへのアクセスの度にオリジンサーバーへアクセスさせると、サーバーの負荷が高くなりますが、CloudFront を使うことで、その負荷を減らすこともできます。
・ネットワーク遅延の低減
サーバーを日本国内に設置してサービスを提供したとして、海外からのアクセスが多い場合、距離遅延の値が大きくなります。CloudFront を使ってユーザーに近いところから配信すれば、その遅延を低減できます。
・コストの削減
初期費用は無料で始められ、「リクエスト数+送信量」での従量課金となります。新規ユーザーは12ヶ月間、500GB のデータ送信と2,000,000回のHTTP/HTTPS リクエストが無料になります。
・可用性の向上
予想外のアクセスがあっても、オリジンサーバーの高負荷やサーバーダウンによるサービスの影響を避けられます。
ディストリビューション
ディストリビューションは、CloudFront による配信の方式です。方式としては2つあります。
1. ダウンロードディストリビューション
- 静的なコンテンツ向け
- HTTP/HTTPSを利用して、HTML、CSS、画像などのデータを配信
2. ストリーミングディストリビューション
- 動的なコンテンツ向け
- HLS(Apple HTTP Live Streaming)や RTMP(Real Time Messaging Protocol)を利用して、動画のストリーミングを配信
この教材を使って勉強してます。
「AWS認定資格試験テキスト AWS認定ソリューションアーキテクト-アソシエイト」
AWS認定資格試験テキスト AWS認定 ソリューションアーキテクト-アソシエイト【電子書籍】[ 佐々木 拓郎 ] 価格:2,618円 |