遅いWebサイトを高速化させる速度改善テクニック(3) – CDN編

サーバー設定

Web サイトの高速化テクニック第3弾は、CDN について解説します。
今回は大規模なサイトや、容量の大きいサイトでは CDN が有効な手段です。

第1弾、第2弾も合わせてご確認ください。



高速化に有効な CDN (Content Delivery Network)

Web サイトでは、アクセスが増えるに連れてサーバーの負荷が増大します。
大規模なサイトでは毎秒何回ものアクセスが来るため、非常に高負荷となります。

アクセス数が増えてきたサイトでは CDN と呼ばれる仕組みがよく利用されます。
Content Delivery Network (コンテンツ配信ネットワーク) の略で「CDN」です。

 
その名の通り、コンテンツを配信するために最適化されたネットワーク を意味します。
キャッシュ機能を備えた専用サーバーが、世界中に分散して配置されています。

世界中にあるサーバーから Web サイトを配信するため、負荷も分散されることになります。
大規模サイトや画像を多用するサイトでは、ほぼ間違いなく利用されている仕組みです。

CDNの主要サービスとメリット

主要な CDN サービスは以下の通りです。

  • CloudFlare
  • Akamai
  • CloudFront
  • CDNetworks
  • Edgecast
  • Fastly

 
いずれも世界中にサーバーを分散配置しており、高負荷にも強い構成です。
CDN の中には、ユーザーに一番近いサーバーが応答するような仕組みが入っています。

CDN を使わず日本の1箇所にサーバーを配置した場合、海外からのアクセスは遅くなりがちです。
CDN を活用することで、世界中のどこからのアクセスにも高速に応答できるようになります。

 
例えば、世界中から大量アクセスが来る「Windows Update」では Akamai が利用されています。

Akamai, CloudFront, Fastly の特徴を比較

CDN 配信の活用方法

CDN では主にキャッシュ機能が利用されます。
画像・CSS・JavaScript といった静的ファイルを CDN にキャッシュさせる機能です。

初回のみ CDN へファイルを渡す必要はありますが、
二回目以降は CDN がキャッシュしているデータから配信してくれます。

Web サーバーから取得するデータが減るため、負荷を削減できるといった仕組みです。
データ量の大きい画像ファイル等を CDN に任せることで、通信コストも抑えられます。

もちろん CDN にも通信量に応じた料金が発生しますが、
一般的には Web サーバーから直接配信するよりも安価となる場合が殆どです。

まとめ

大規模 Web サイトの高速化手法でもある、CDN を解説しました。
アクセス数が膨大になってくると、CDN の導入によってサイト高速化の効果が見込まれます。

キャッシュすることによるリスクなど注意する点も多数ありますが、
サーバー負荷・通信費用が課題となっている場合には、ぜひご検討ください。

速度改善テクニック(4) – JS/CSS編