MEGAZONE
Tech ブログ

CDN導入のメリット・デメリットをわかりやすく解説!
CDN(コンテンツデリバリーネットワーク)は、Web上でコンテンツの高速配信や提供を行う世界中に分散したサーバー群のことです。近年、CDNはトラフィックの多いWebサイトやアプリケーションでは、ほとんど導入・利用されています。
CDNはさまざまなサービスと連携し、利用が可能となります。
例えば、Twitterが提供するCSSフレームワーク「Bootstrap」は、フレームワークとJacascriptやjQueryでWebサイトを構築することができます。CDNとBootstrapを連携すると、初心者でも簡単に高速化したWebサイトを構築できます。
CDNの導入を検討中の方に、様々なサービスと連携し、コンテンツの高速配信を可能にするCDNのメリットやデメリットを説明し、CDNの理解度をあげていただけるようにご紹介していきます。

CDN導入の5つのメリット
CDNの高速配信を可能にする仕組みと、5つのメリットを紹介します。
CDNは、コンテンツの高速配信を可能にすることで、Webサイトや動画サイトの利用者に遅延や中断することなく視聴を可能にし、UX(ユーザーエクスペリエンス)の向上に役立ちます。
高速配信の実現には、キャッシュの仕組みがあります。次の章から詳しく解説します。
☑︎|①Webページの速度の向上
☑︎|②コスト削減につながる
☑︎|③オリジンサーバーの負担減
☑︎|④一定のセキュリティ対策が可能
☑︎|⑤SEO対策のひとつになる
①Webページの速度の向上
まず、CDNのメリットとしては、冒頭からご紹介しているコンテンツの高速配信があります。
Webサイトの表示速度を高速化できる理由にキャッシュの仕組みがあります。
≫≫ Webサイトの表示速度を改善するCDN・キャッシュとは?
CDNの仕組み
ここで、CDNの仕組みを説明します。CDNは、主に2つのサーバーで構成されたネットワークです。
オリジンサーバー
コンテンツのオリジナルファイルをホスティングしているサーバー。オンプレミスやクラウドが利用される。
キャッシュサーバー
世界各地に分散して配置されているサーバー群。閲覧者から最も近いキャッシュサーバーからコンテンツの配信を実施。
最初の閲覧者のリクエストは、オリジンサーバーまで到達し、そのデータをキャッシュサーバーにキャッシュ(複製・保存)します。2人目以降の閲覧者には最寄りのキャッシュサーバーからデータが提供されます。
キャッシュの仕組みで、閲覧者とサーバーの距離が縮まり、距離が短いとコンテンツをより早く、品質よく届けています。
②コスト削減につながる
CDNを導入すると、サーバーネットワーク全体でコスト削減できる場合が多いです。
CDNを導入すると、オリジンサーバーへ到達する場合のみデータのやり取りが実施されるため、データ転送量が減ります。
また、CDNの負荷分散の仕組みで、オリジンサーバーはスケールアップに伴う利用量が増大することがなくなり、サーバー利用料金も削減できます。
③オリジンサーバーの負担減
先ほどご紹介した通り、CDNにはキャッシュの仕組みがあるため、同じ地域の別の利用者が視聴する際は、キャッシュサーバーから配信され、視聴できます。このような仕組みにすることでオリジンサーバーへのアクセスが減り、負担が軽減されます。
また、CDNはデータセンターでロードバランサーを使用して構成しているため、トラフィックが急増しても効率的に処理し、負荷を分散させるため、高負荷なサービスを提供する企業も安心して利用できます。
④一定のセキュリティ対策が可能
近年、増加しているサーバー攻撃のセキュリティ対策にも有効です。特にDos攻撃/DDoS攻撃は、大量のリクエストを送信し、サーバーやWebサイトをダウンさせることが目的ですが、CDNを導入するとダウンリスクが減少し、セキュリティリスクを回避できます。
⑤SEO対策のひとつになる
CDNがSEO対策のひとつになると言われる理由に、Googleのアルゴリズムによる判定があります。
ページの表示速度はSEOの評価の重要な指標だと公表されており、CDNでページ表示速度を向上させると、SEOの評価が上がり、検索結果の上位表示に繋がります。
CDN導入の3つのデメリット
ここまでCDNの利用メリットをご紹介しましたが、利用する上で注意すべきデメリットもあります。
導入前に知っておきたいポイントを3つご紹介します。
☑︎|サイト変更の反映に時間がかかる
☑︎|キャッシュ事故の可能性
☑︎|ログファイルがない場合がある
サイト変更の反映に時間がかかる
ネットワークには、DNSと呼ばれる「IPアドレス」を、インターネット上の住所であるドメイン名と紐づける仕組みがあります。
IPアドレス | ドメイン名 |
192.168.1.1 | ○○○○.com / ○○○○.co.jp など |
DNS同様に事前にTTLの時間を調整し、サイト変更の反映が計画的に実施されるよう行うことが大切であり、それを理解していない業者や技術者に任せると、知識不足によりサイト変更に無駄な時間を費すことになります。
この点は、DNSやCDNの仕組みに問題があるのではなく、それを扱う業者や技術者の知識不足がデメリットを引き起すことが考えられるため、CDNを導入する際には注意しておくべきポイントです。
CDNもDNSと深く関連があり、設定変更の際はDNSの変更の反映時間に伴い、一定の時間がかかります。キャッシュサーバー上の古いコンテンツを速く削除できるとその期間を短縮できるため、CDN導入の際には、キャッシュ削除の速度を確認しておくことがおすすめです。
≫≫ CDNのキャッシュとは?保存時間や確認方法について解説
キャッシュ事故の可能性
CDNは設定を誤ると、通称キャッシュ事故と呼ばれる、キャッシュされるべきでないデータをキャッシュし、配信する可能性があります。過去には、大手フリーマーケットサービスで個人情報が漏えいした事例もあります。
このようなキャッシュ事故を防ぐためにも、設計や設定に対して正しい基準を設け、運用が適切になされるよう、属人的な導入ではなく、システム的なアプローチで事故を未然に防ぐ体制や方法を確立することが必要不可欠です。
ログファイルがない場合がある
CDNを利用する場合、アクセスログはオリジンサーバーよりもキャッシュサーバーに多く蓄積されるため、CDNにログを取りに行く必要があります。
CDNには、アクセスログを提供していないサービスもあります。
また、ログの提供方式が限定されている場合もあります。CDN導入時には、ログの取得方式や置き場所の選択が可能かを事前に確認が必要となります。
まとめ
CDNは、利用する上でデメリットにもなりえる注意点がありますが、それをはるかに上回る表示速度の向上やコスト削減、セキュリティ対策などWebサービスを運営する上で対策が必須な項目を強化することができます。
導入に際しては、各CDNサービスの仕様の特徴やキャッシュ削除速度、ログ提供方式などをしっかりとチェックした上で選定をおすすめします。
