CDN とは何ですか? CDN はどのように機能するのでしょうか? なぜ CDN を使用する必要があるのでしょうか?

公開: 2016-03-22

すべての Web ページが 1 ミリ秒も待たずに即座に読み込まれる世界を想像してみてください。 これはまだ不可能ですが、さらに数歩近づけるテクノロジーが登場しつつあります。

コンテンツ配信ネットワーク(略してCDN ) は、この目標を達成するためのステップの 1 つです。

この記事では、CDN とは何か、CDN モデルと従来の Web ホスティング モデルとの比較、Web サイトに CDN を使用するメリットとデメリットについて説明し、最後に Web サイトの立ち上げ方法を説明します。 CDN を使用します。

CDNとは何ですか?

CDN は、世界中に地理的に分散した Web サーバーのシステムであり、コンテンツをユーザーに配信する方法を改善するために、各サーバーが Web サイトのコピーをホストします。

CDN の主な目的は何ですか?

CDN の主な目的は、Web サイトのコンテンツをより効率的に (つまり、より速く) エンド ユーザーに提供することです。

CDN を使用する場合、ユーザーが Web サイトのコンテンツを読み込むと、ユーザーに最も近い CDN サーバーがそのコンテンツを提供します。

コンテンツの移動距離が短いため、ユーザーに届くまでの時間が短縮され、Web サイトの読み込み時間が短縮されます。

ただし、後で説明するように、CDN を使用する利点はそれだけではありません

CDN はどのように機能しますか?

すでに説明したように、Web ホスティング設定の一部として CDN を使用すると、ネットワーク内の各サーバーが Web サイトのコピーをホストします。

これらの CDN サーバーはネットワークのエッジにあり、ユーザーに最も近いため、「エッジ」サーバーと呼ばれます。

これは、Web ホスティング会社によって提供され、Web サイトの作成および更新時にファイルが自動的にアップロードおよび保存される「オリジナル」サーバーとは対照的です。

CDN がどのように機能するかを示す基本図。

Web サイトがどのようにしてオリジン サーバーからこれらのエッジ サーバーに到達するのか疑問に思われるかもしれません。

まあ、それはあなたのCDNがプッシュCDNであるかプルCDNであるかによって異なります...

Pull CDN とは何ですか (そしてどのように機能しますか)?

プル CDN セットアップは、必要に応じてオリジン サーバーからファイルをプルすることで機能します。

ユーザーが初めてファイルを要求するとき、エッジ サーバーはオリジン サーバー (つまり、現在のホスティング プロバイダー) からファイルを読み取る必要があります。

エッジ サーバーは、そのファイルのキャッシュされたバージョンを保存します。 「キャッシュされた」バージョンとは、その特定の瞬間からのファイルのコピーを意味します。

ファイルに対する今後のリクエストは、ファイルの有効期限が切れる (期限切れになる) まで、(オリジン サーバーから取得されるのではなく) エッジ サーバーから直接送信されます。

有効期限が切れた後は、ファイルを配信元サーバーから再度更新してキャッシュする必要があります。

Push CDN とは何ですか (そしてどのように機能しますか)?

プッシュ CDN を使用すると、ユーザーは自分のファイルを CDN 自体にアップロード (「プッシュ」) することができ、ファイルはアップロードされるとすぐにエッジ サーバーに配布されます。

そのため、ファイルはオリジンサーバーから取得する必要がなく、すべてのエッジサーバーにすでに保存されています。

これはあまり一般的ではないオプションです。 ただし、メディアのコピーが常にエッジ サーバーに保存されるため、大きなメディア ファイルを配布する場合には有利です。

CDN は Web ホスティングに代わるものですか?

いいえ、 CDN は Web ホスティングに代わるものではありません。 これらは連携して機能します。

元のファイルはすべて Web ホストのサーバーに保存されます。 これがオリジンサーバーです。

CDN サーバーには、配信元サーバー上のファイルのコピーのみが含まれます

Web ホスティングを削除すると、CDN にはファイルをコピーする場所がなくなります。

CDN のビデオ概要

まだ少し混乱している場合は、非常に簡単な言葉で CDN を説明した簡単なビデオをご覧ください。

CDNとは何ですか?

CDN を使用しない Web ホスティングの問題

従来の Web ホスティング モデルでは、Web サイトのすべてのファイル (HTML、CSS、画像など) は世界の1 か所、つまり Web ホスティング プロバイダーのデータセンターがある場所であれば基本的にどこでもホストされます。

エンド ユーザーが Web サイトにアクセスすると、サイトのコンテンツは常にこの 1 つの場所から取得されます

これにはいくつかの欠点があります。

1. 距離が進むと速度が低下します

Web ホスティング プロバイダーのデータセンターがテキサスにある場合、ユーザーが Web サイトを読み込むたびに、コンテンツはそのテキサスのデータセンターから配信されます。

ユーザーがサーバーから地理的に離れるほど、ファイルはより長い距離を移動する必要があるため、転送速度は低下する傾向があります。 ユーザーの所在地がデータセンターから遠いほど、Web サイトの読み込みに時間がかかります。

そのため、英国の Web サイト ユーザーは、テキサスのデータセンターに近いため、米国のユーザーよりも Web サイトの読み込みが遅くなります。

2. 転送速度の制限

複数のユーザーが同時に Web サイトをロードしようとしている状況を考えてください。

パーソナル コンピューターがネットワーク上でファイルを転送できる速度 (スループット レート) に制限があるのと同様に、サーバーにもファイルを転送できる速度に制限があります。

現在の Web ホスティングは、このようなトラフィックの急増に備えていますか?

特に、転送速度が指定されていない共有ホスティング ソリューションを検討してください。 これらの環境やその他の環境では、転送速度がかなり制限される可能性があり、Web サイトへのトラフィックが急増すると、パフォーマンスに顕著な影響が生じる可能性があります。

これらの理由により、Web サイトのコンテンツがすべてのエンド ユーザーに一度に送信されるため、トラフィックが急増すると Web サイトの読み込み時間が長くなる可能性があります。

CDN を使用する利点

CDN モデルを使用すると、従来の Web ホスティング モデルの欠点を克服できます。 実際、CDN には次のようないくつかの利点があります。

1. 読み込み時間の短縮 (ユーザーに最も近いサーバーからコンテンツを提供することにより)

ユーザーの所在地がホスティング プロバイダーのデータセンターから遠ければ遠いほど、ファイルをより遠くまで転送する必要があるため、Web サイトの読み込みに時間がかかることに注意してください。

CDN は、エンド ユーザーが世界のどこにいるかに基づいて、各エンド ユーザーに最も近いエッジ サーバー、またはエンド ユーザーにとって最も効率的なエッジ サーバーからコンテンツを提供します。

たとえば、中国の誰かがあなたの Web サイトを読み込んだ場合、CDN は中国のサーバーから Web サイトのコンテンツのコピーを自動的に読み込む可能性があります。 誰かが英国からあなたのサイトにアクセスした場合、代わりに英国のサーバーが使用されて、その特定のユーザーにあなたの Web サイトが読み込まれる可能性があります。

CDN は、各エンド ユーザーにとってどのサーバーが最も効率的な選択肢であるかを自動的に判断します。

従来のホスティング モデルと CDN モデルの図。

2. トラフィックスパイク処理の改善 (ファイルの分散転送による)

前述したように、サーバーには一度に転送できるデータ量に制限があります。 CDN は、複数のユーザーが同時に Web サイトにアクセスしようとした場合の Web サイトのパフォーマンスを向上させるのに役立ちます。

CDN の仕組みの性質上、Web サイトへの同時リクエストは、リクエストの送信元に応じて、世界中の複数のエリアにある複数のサーバーによって処理される可能性があります。

このようにして、1 つの特定のサーバーにユーザーからのすべてのリクエストが殺到することはありません。 CDN プロバイダーは、トラフィックの急増の中でもファイルが効率的に読み込まれるようにするための他の手順も実装します。

3. セキュリティの向上 (DDoS の緩和と保護による)

DDoS 攻撃とは、サイトをクラッシュさせたり、過剰な転送により帯域幅料金の増加を引き起こしたりする目的で、サーバーに Web サイトへの不正なリクエストが殺到することです。

CDN プロバイダーは、DDoS 攻撃時の Web サイトのパフォーマンスと稼働時間を向上させるのに役立つ、DDoS 検出および軽減メカニズムを提供する可能性があります。

CDN を使用するデメリット

ただし、CDN の使用にはいくつかの欠点があります。

1. コスト: CDN は通常、従量課金制です。

CDN プロバイダーは、転送するコンテンツの量に基づいて料金を請求することがよくあります。 このため、月額費用は月によって異なります

現在の Web ホスティング プロバイダーには、現在のホスティング パッケージの一部として毎月一定の転送額がすでに含まれている場合があります。 したがって、CDN の追加コストがビジネスのオンライン プレゼンスにとって実現可能かどうかを検討する必要があります。

「プッシュ CDN」プロバイダーは多くの場合、ストレージ スペースに対しても料金を請求することに注意してください (下記を参照)。

クラウドへの移行にかかる費用を理解するには、次のシナリオを検討してください。

Web サイトのサイズが 1MB で、CDN プロバイダーの転送料金が1 GB あたり $0.085 であるとします。 10,000 人のユーザーが Web サイト全体にアクセスする場合のコストは次のようになります: ((1/1024)×10,000) ÷ 0.085 = 114 セント、つまり10,000 リクエストあたり 1.14 ドル

ご覧のとおり、これは法外なコストではありません。

ただし、多くの CDN 製品は、現在のホスティング プロバイダーを使用して保存場所からファイルを読み取るため、追加コストがかかります。 このオリジン サーバーは、Amazon S3 などのファイル ストレージ システムである場合もあれば、現在のホスティング プロバイダーである場合もあります。

Web サイトに動的コンテンツが含まれている場合でも、それらの種類のファイルを処理できるホスティング ソリューションを維持する必要があります。

CDN ソリューションは多くの場合従量課金制であるため、DDoS 攻撃は経済的に不利になる可能性があります。このタイプの攻撃によって引き起こされるファイル転送の大幅な増加は、ビジネスのコストの増加につながります。

ただし、前述したように、CDN プロバイダーはこの種の攻撃の検出と軽減に取り組んでいます。

注: 現在、最高の Web ホスティング プロバイダーの多くには、プランに無料の CDN サービスが含まれています。

2. 変化するコンテンツをキャッシュするには追加の構成が必要

CDN は、Web サイトのコンテンツのコピーを世界中にキャッシュすることで機能することに留意してください。

ただし、ほとんどの Web サイトには、Web サイトにアクセスする特定のユーザーやその他の基準 (特定のユーザーへのウェルカム メッセージ、ショッピング カートなど) に応じて変更されるコンテンツが含まれています。

このタイプのコンテンツはリクエストごとに常に更新されるため、世界中でキャッシュするのは簡単ではありません。

ストリーミング ファイルは、CDN で使用する場合に特別な注意が必要な別の形式のコンテンツです。 詳細については、以下を参照してください。

CDN に関するその他の考慮事項

ファイル更新時にファイルキャッシュを更新する

プル CDN を使用してファイルの 1 つを更新する必要がある場合、次のリクエストで更新されるように、世界中のすべてのキャッシュされたコピーも期限切れにする必要があります。

これを実現するには、デフォルトの有効期限 (プロバイダーによって異なります) まで待つか、キャッシュされたファイルを強制的に直ちに無効にする (キャッシュを手動でクリアする) 必要がある場合があります。

ファイルの更新にはこの追加手順が必要になる場合がありますが、Web サイトの静的ファイルはそれほど頻繁には更新されない可能性があります。

アクセス頻度の低いファイルには十分な有効期限を確保する

プル CDN ソリューションには、常にすべてのエッジ サーバーにファイルのコピーが含まれている必要はありません (以下で詳しく説明します)。 ファイルのキャッシュされたバージョンがまだ存在しない場合は、ファイルをオリジン サーバーから取得する必要があります。

ビデオなどの大きなファイルの場合、オリジン サーバーからこれらの種類のファイルを読み込むとパフォーマンスに大きな影響が出る可能性があるため、これはより大きな問題となります。

この問題の解決策としては、キャッシュされたファイルの有効期限を (可能であれば) 長くして、ファイルを配信元サーバーから頻繁に更新する必要がなくなるようにするか、大きなファイルをプッシュ CDN ソリューションに保存する (以下を参照) という方法があります。 )。

静的コンテンツと動的コンテンツ

Web サイトには、静的コンテンツと動的コンテンツという 2 つの主要なタイプのデータが含まれています。

Web サイト上で表示されるコンテンツ (つまり、外観、画像、ビデオ、CSS および JavaScript ファイルなど) のほとんどは、通常、静的なコンテンツです。 静的コンテンツは (ソース ファイルを再アップロードしない限り) 変更されることはありません

たとえば、誰が Web サイトにアクセスしても、ページを何回リロードしても、会社のロゴの外観は変わりません。

動的コンテンツは、データの要求者またはその他の基準に応じて変化します

たとえば、ジョンが銀行口座にログインすると、残高が表示されます。 ただし、デビッドがログインすると、残高はジョーに表示されるものと同じではありません

別の例として、WordPress ダッシュボードにログインすると、「こんにちは、ジョン!」などのメッセージが表示されます。

ユーザーまたはその他の基準に応じて変化するコンテンツは、動的コンテンツとみなされます。

CDN は静的、動的、ストリーミング コンテンツをどのように処理しますか?

この時点で、「CDN にはどのような種類のファイルを保存できるのか?」という重要な疑問が生じます。

静的ファイルは、誰が Web サイトを読み込んでも常に同じ状態を保つ傾向があるため、ファイルの更新頻度が低いため、CDN 経由で世界中にキャッシュするのに適しています。

動的コンテンツ (ショッピング カートなど) に関しては、ユーザーごとまたはその他の基準に合わせて変更されることが多いため、世界中でキャッシュできる単一のファイルは通常ありません。

ただし、CDN プロバイダーは、ユーザーとホスティング サーバー間の最速ルートを見つけるなど、動的コンテンツの読み込み効率を向上させるソリューションを実装しています。

多くの CDN プロバイダーは、ライブ メディアとオンデマンド メディアの両方を CDN 経由でストリーミングするソリューションも実装しています。

CDN を設定する方法

さて、あなたはおそらく次のように考えているでしょう。「私の Web サイトには CDN が必要であると確信しています。」 どのように移行すればよいでしょうか?」

答えは、使用するホスティング プロバイダーと必要な CDN ソリューションの種類によって異なります。

一部の Web ホスティング プロバイダーは、コントロール パネルから CDN を簡単に有効にするオプションを提供しています。 他のセットアップには追加の手順が必要です。

Web サイト全体に CDN レイヤーを追加する

このオプションは、中小企業の経営者にとって最も簡単に設定できるオプションの 1 つです。 Web サイトのコンテンツにアクセスするユーザーからのすべてのリクエストは、まず CDN プロバイダーによって管理されるシステムを通じてフィルタリングされます。

静的コンテンツは CDN からロードされますが、動的コンテンツは既存のサーバーから直接ロードされます (または、前述したように、動的コンテンツのロード時間を短縮するための手法が使用される場合があります)。

プル CDN は、CDN 経由でファイルを配布するために、実際にはバックグラウンドで実装されます。

CloudFlare は、このタイプの CDN ソリューションを提供する企業の 1 つです。 CloudFlare などの一部の企業は、CDN のみを超えて Web サイトのパフォーマンスのための他の機能強化も提供します。

設定方法

このタイプの CDN システムをセットアップする主な手順は、Web サイトの DNS レコードを更新して CDN 層を指すようにすることです。 CDN レイヤーは、必要に応じてリクエストをオリジンサーバーにルーティングします。

CDN がそこからファイルをプルするには、現在のホスティング ソリューションを維持する必要があります。

プル CDN を設定する方法

CDN で配布するオリジン サーバー上のファイルの場所を指定します。 その後、CDN は必要に応じて配信元サーバーからファイルをプルします。

また、Web サイト内のファイルへのリンクを CDN のエンドポイントに更新するか、CDN を指すように DNS 設定を更新する必要があります。

プッシュ CDN を設定する方法

ファイルを CDN プロバイダーにアップロードします。 また、Web サイト内のファイルへのリンクを CDN のエンドポイントに更新するか、CDN を指すように DNS 設定を更新する必要があります。

ウェブホスティングプロバイダーを辞めるべきでしょうか?

いいえ。CDN ソリューションを購入した後でも、Web ホスティング プロバイダーを利用し続ける必要があります。

CDN はコンテンツをキャッシュするために使用されることに注意してください。 Web サイトに動的コンテンツが含まれている場合でも、そのコンテンツを処理するために現在のホスティング ソリューションを維持する必要があります。

CDN を提供しているホスティング会社はどこですか?

最近では、多くのホスティング会社が共有ホスティング プランの一部として CDN を提供しています。

  • SiteGround (独自の特注 SiteGround CDN を使用)
  • Bluehost (Cloudflare は事前に有効になっています)
  • Kinsta (有料のCloudflareプランが無料で含まれています)
  • WP Engine (有料の Cloudflare プランが無料で含まれています)
  • HostGator (Cloudflareはビジネスプランのみに含まれます)
  • IONOS (Cloudflare はエキスパート プランにのみ含まれます)
  • Cloudways (Cloudflare Enterprise は月額わずか 4.99 ドルで追加可能)

結論

CDN は、ユーザーへのファイルの転送に必要な時間を短縮し、Web サイトの効率を向上させる実行可能なソリューションです。 これにより、Web サイトでの顧客維持率が向上し、検索結果のランキングも向上する可能性があります。

CDN は、現在のホスティング設定でのファイル リクエストの負荷も軽減し、大量のトラフィックの処理に役立つ可能性があります。

ただし、CDN にはコストがかかることがよくあります。 Web サイトは CDN によってパフォーマンスが向上する価値がありますが、そのメリットは潜在的なコストやその他のトレードオフを上回る必要があります。

CDN は、Web サイトのパフォーマンスを向上させるために実行できる多くの手順の 1 つにすぎないことを忘れないでください。 高速な Web ホストを選択することが最初 (そして最も重要) です。

また、一般的に Web サイトの速度を向上させるためにできること (画像圧縮など)、特に WordPress Web サイトの読み込み時間を改善するためにできることは他にもたくさんあります。

ウェブサイトに CDN を使用したことがありますか? CDN についてのご意見を下のコメント欄でお知らせください。