100秒で理解するCDN
はじめに
この記事の内容は、以下の動画でも解説しているので、ぜひ見てみてください。他にもフロントエンドに関する解説動画を投稿しているので、良ければチャンネル登録よろしくお願いします!
CDNとは
CDNとは、「Content Delivery Network」の略で、インターネット上でコンテンツを効率よくユーザーに配信するためのネットワークのことです。
CDN(Content Delivery Network)とは、Web上で送受信されるコンテンツを効率的に配送するために構築されたネットワーク
例えば、日本からアメリカのサーバーでホスティングされているWebサイトにアクセスする場合を考えてみましょう。
日本とアメリカのサーバー間では、物理的な距離が遠いため、日本でホスティングされているWebサイトにアクセスする場合に比べて、Webページを表示するスピードが遅くなってしまいます。
そこで、この問題を解決するのがCDNです。これから、具体的にCDNがどのようなものなのか説明していきます。
CDNの構成要素
CDNは主に「オリジンサーバー」と「キャッシュサーバー」によって構成されています。
オリジンサーバーの「origin」は日本語で「原点・起源・始まり」と言う意味があり、CDNでは元々のデータが入っているサーバーのことを指します。
キャッシュサーバーは、オリジンサーバーからデータをコピーしてもっておくサーバーのことです。このコピーのことを “キャッシュ” と言います。キャッシュサーバーは世界中にたくさん配置されていて、もちろん、日本の中にもあります。
CDNの仕組み
先ほどの例と同じように、アメリカのWebサイトにアクセスする場合を考えてみましょう。先ほどは、ユーザーは直接アメリカのサーバーにリクエストを送っていました。
CDNを使う場合、ユーザーは最も近い距離にあるキャッシュサーバーにリクエストを送ります。そして、キャッシュサーバーはキャッシュを持っていた場合、コンテンツをユーザーにレスポンスします。
もしキャッシュサーバーにキャッシュが無かった場合は、オリジンサーバーに元データを取りに行きます。そして、元データをキャッシュした上で、ユーザーにコンテンツを返します。
そうすることで、次にユーザーからリクエストが来たとき、オリジンサーバーにリクエストすることなくコンテンツを返すことができるのです。
Discussion