世界規模のネットワークを通じてウェブコンテンツ配信を高速化する「Amazon CloudFront」とは

Amazon CloudFrontは、ユーザーへの静的および動的ウェブコンテンツの配信を高速化するウェブサービスです。エッジロケーションと呼ばれるデータセンターの世界規模のネットワークを通じてコンテンツが配信されます。今回は、Amazon CloudFrontのメリットや主要機能、料金体系について解説します。

Amazon CloudFrontとは何か

Amazon CloudFrontはAWSが提供する高速・高パフォーマンスなコンテンツ配信サービス(CDN)です。CDNとは、音楽や画像など、大容量のデジタルコンテンツの大量配信に対応したネットワークのことであり、ネットワーク上のさまざまな場所に、オリジナルサーバー上のデジタルコンテンツをキャッシュした配信サーバーを用意しています。ユーザーのアクセス位置に応じて、そのなかから最寄りの配信サーバーを指示し、高速配信を行います。

AWSでは、世界中約100ヵ所にエッジサーバー(CDNのコンテンツ配信サーバー)が配備されており、最寄りのエッジサーバーに誘導することにより最短距離でコンテンツを高速に配信することが可能になります。またコンテンツをエッジサーバーでキャッシュすることにより、元のサーバーの負荷を減らし安定した配信を行います。

現在利用しているウェブサーバーをオリジンサーバー(元データを格納するサーバー)としてAmazon CloudFrontに登録し、ウェブページ内のコンテンツリンク先をキャッシュ参照用URLに変更することで、Amazon CloudFrontがオリジンサーバーからデータを取得します。これにより、ウェブサイト訪問者から最短距離でコンテンツが配信されるだけでなく、同一コンテンツに繰り返しアクセスのあるようなウェブサイトでは、このキャッシュ機能で特に強みを発揮します。

また、大量アクセスによるレスポンス速度低下やサーバーダウンなど、共有型のレンタルサーバー特有の問題も Amazon CloudFrontにより解消することができるため、障害対策、安定配信にも有効です。さらに、独自SSL証明書にも対応しており、Amazon CloudFrontを通じて暗号化されたコンテンツの高速配信も可能です。

Amazon CloudFrontの構成

オリジンサーバー

コンテンツを配信する元となるサーバーです。オリジンサーバーには、Amazon EC2やS3などのほかに、オンプレミスサーバーを指定することもできます。初回アクセス時やキャッシュ失効時には、オリジンサーバーからコンテンツを取得します。

エッジサーバー

CDNを構成する「エッジサーバー」は、北米や南米、欧州など世界中に設置されており、ユーザーに最も近い場所からコンテンツを配信できます。

Amazon CloudFrontの主な機能とメリット

Amazon CloudFrontの主な機能と利用メリットについて解説します。

主な機能

Amazon CloudFrontの主な機能は、以下のとおりです。

コンテンツ配信

静的あるいは動的コンテンツを、ユーザーに最も近いサーバーから配信できます。配信サーバーは自動的に選択され、何も設定する必要はありません。

ストリーミングデータ配信

動画や音声などのメディアストリーミングデータの配信に対応しています。Adobe Media Serverといった複数の製品にも対応しています。

CDN経由のデータ送信

Amazon CloudFrontは、CDNから配信されたコンテンツからのPOSTやPUT、DELETEなどの処理をサポートしています。

コンテンツのキャッシュ

初回アクセス時に、元となるサーバーから取得したコンテンツをキャッシュします。次回以降は、キャッシュの有効期限が切れるまでキャッシュされたコンテンツを返すことにより表示を高速化します。設定を変えればまったくキャッシュしないようにすることも可能です。

ジオターゲティング機能

ヘッダに、アクセス元の国を特定できる国コードをセットし、国コードをコンテンツで判断することで、応答するコンテンツを言語毎に変えたり、あるいはフィルタリングしてアクセスブロックしたりすることができます。

レポート作成機能

CloudFrontコンソールでは次のような、CloudFrontアクティビティに関するさまざまなレポートが取得できます。

  • キャッシュ統計レポート
  • AWS コマンドラインインターフェイス(CLI)
  • 人気オブジェクトレポート
  • トップリファラーレポート
  • 使用状況レポート
  • ビューワーレポート

メリット

Amazon CloudFrontには、次のようなメリットがあります。

高速およびグローバル

世界に配置されたエッジロケーション(キャッシュサーバー)により最短距離でコンテンツを配信するCDNを実現しています。CloudFront ネットワークには190の接続ポイント(PoP)があり、復元性の高いAmazonバックボーンネットワークを活用して、エンドユーザーにとって優れたパフォーマンスと可用性を実現します。大量アクセスを処理する可用性も備えています。

高度なプログラムが可能

Amazon CloudFrontの機能は、特定のアプリケーション要件に合わせてカスタマイズできます。CloudFrontイベントによってトリガーされるLambda@Edge関数は、世界中のAWSロケーションへカスタムコードを拡張することで、複雑なアプリケーションロジックでもエンドユーザーの近くから処理し、応答性を向上させることが可能です。また、CDNはネイティブなAPIまたはAWSツールを使用することで、現代のDevOps(開発 (Development)と運用(Operations))、およびCI / CD環境用のツールや自動化インターフェイスとの統合もサポートしているなど、優れたプログラム環境を備えています。

セキュリティ

Amazon CloudFront は、ネットワークレベルとアプリケーションレベルの両方で保護される非常に安全性の高いCDNです。トラフィックとアプリケーションは、AWS Shield標準のようなさまざまな組み込み保護機能を追加費用なしで利用できます。また、AWS Certificate Manager(ACM)といった設定可能な機能を使用して、追加コストなしでカスタムSSL証明書を作成、管理することもできます。

AWS との密接な統合

Amazon CloudFrontは、Amazon S3、Amazon EC2、Elastic Load Balancing(ELB)、Amazon Route 53、AWS Elemental Media Services などのAWSのサービスと密接に統合されており、各サービスとの連携が容易になっています。これらのサービスにはすべて同じ管理コンソールからアクセスすることができ、コンテンツ配信ネットワーク (CDN)のすべての機能をこれらのサービスと連携設定して展開することができます。設定にあたっては、APIまたはAWSマネジメントコンソールを使用して行います。

サーバー移転不要

コンテンツ配信のルールをAmazon CloudFrontで設定するだけで、現在利用中のサーバーをそのままオリジンサーバーとして利用することができます。

Amazon CloudFrontの料金体系と活用方法

Amazon CloudFrontの料金体系と活用方法について解説します。

Amazon CloudFrontの料金体系

実際に使用した分のみの支払いで、最低料金設定はありません。料金は、次の4つのエリアのサービスの実際の使用量をもとにしています。

  • データ転送アウト(インターネット/オリジン)
  • HTTP/HTTPSリクエスト
  • 無効リクエスト
  • フィールドレベル暗号化リクエスト

Amazon CloudFrontの活用

ではAmazon CloudFrontは、実際にどのような活用方法があるか見てみましょう。

EC2インスタンスの負荷軽減

静的コンテンツはAmazon S3に置き、Amazon CloudFrontでキャッシュさせてウェブサーバー(Amazon EC2)へのアクセスを減らすことができます。動的コンテンツをキャッシュすれば、データベースの負荷軽減も可能です。また、必要インスタンス数を減らすことができ、コスト削減につながります。

WordPressをAmazon CloudFrontで配信

Amazon CloudFrontをWordPressサイトのフロントに配置するだけでサイトアクセスが著しく高速になります。WordPressサーバーはAmazon CloudFrontからのリクエストを処理するだけなので、最低限のサーバースペックで運用できます。

ネットワークレイテンシを低減する

一般的にサーバーを国内に設置すると、海外からのアクセスはレイテンシが大きくなります。それに対して、Amazon CloudFrontを使って海外のサーバーから配信すれば、レイテンシを低減できます。コンテンツがキャッシュされている限り、ユーザーは安定したレスポンスを得ることが可能です。

障害時の対応

フェイルオーバー先に別のCDNを利用できます。(ELBならAuto Scaling設定など)

まとめ

Amazon CloudFrontはAWSの世界規模のエッジサーバー(CDNのコンテンツ配信サーバー)のネットワークを通じて、静的および動的ウェブコンテンツの配信を高速化するウェブサービスです。高いセキュリティと高可用性、最適なパフォーマンスといったメリットがありますので、利用を検討されてみてはいかがでしょうか。

Amazon Web Services(AWS)、Microsoft Azureの
導入支援サービスのご相談、お問い合わせをお待ちしております。

ページ上部へ戻る