最近話題のCDN「Fastly」のどこがいいのかわからないので、まずはCDNについて調べてみた。

しゅういち
どうも、ブログというコンテンツをデリバリーしてるエンジニア、しゅういちです。

あなたは「Fastly」というサービスをご存知でしょうか?

これまでのCDNよりももっと高速に効率的にコンテンツを配信するためのサービスの一つです。

ここでふと思ったことは「そもそも、CDNって一体なんなのだろうか?」

僕は名前を知っていたのですが、基本的に業務システムを構築することが多かったので、CDNという技術についてざっくりとした知らなかったのです。

なので、今後のスキルアップのために、CDNについて調べてみました。

今回の対象読者は以下の通り

  • CDNをもっと詳しく知りたい開発を初めて3ヶ月ぐらいの方
  • Webの技術でCDNを扱うことになった技術者の方

URL指定でキャッシュ制御ができる。

そもそも、CDNとは?

CDNとはコンテンツデリバリーネットワークのことをさします。

どういうものかというと、コンテンツの配信を効率的にする仕組み。

さらに詳しくいうならば、Webサイトにアクセスしようとするユーザーから最も近い配信拠点から効率的かつ高速でWebを配信する仕組みのことです。

この仕組みというのは、画像やファイルをダウンロード配信を遠くにいるサーバから効率的に配信したりダウンロードするために使われます。

そして、この仕組みというのが、それぞれのルータやサーバを経由して配信されます。ユーザがアクセスした後にHOP(データが届くまでのルーターへの経由数)が画像やファイルがユーザに届くスピードに影響します。

例えば、高速道路で目的地まで行くために、何回かサービスエリアに寄ることで、目的地までの到着時間が遅くなるのと同じ考え方です。

CDNを利用する3つのメリット

ユーザーの使い勝手を良くするため。

シングルページアプリケーションは、初期ロードを実行する際に、膨大なコンテンツを生成して表示するので、ロードが遅くなる傾向にあります。

ロードが遅くなると、ユーザー自身が苛立つことになるため、サービス自体の評価が下がる。

だから、サービスを提供する側がパフォーマンスを上げるためにCDNを画面で設定できるFastlyがかなり暑いサービスであるようです。

Fastlyのサービスについては、時間があるときに書こうと思います。

トラフィックの負荷分散ができる。

ロードバランサー(負荷分散装置)を設置したとしても、多くの人からアクセスが増えると、回線不足を起こす可能性がある。

そりゃ、一つの回線にアクセスが集中すれば、遅延するのは当たり前ですね。

例えば、東京にある半蔵門線永田町駅という駅は、企業が非常に多く、通勤時にはエスカレーターを利用する人が増えます。エスカレータが2つしかないため、出口まで出るのに時間がかかってしまう。

高可用性が期待できる。

システムはそもそも、利用できない状況にならないように配慮する必要がある。なぜなら、サービスが利用できない結果、経済学的に機会損失が起こるためである。

だからこそ、CDNを利用することでそのリスクを減らすことができる。

まとめ

CDNという仕組みはそれだけ、我々が海外のWebコンテンツを利用する際にとても役に立っているサービスなのです。

ほんの5年ぐらい前は、海外のコンテンツにアクセスする時は、とても時間がかかっていました。

Razberry piのOSをダウンロードするときに、一晩ぐらいかかってましたからね。

技術の進歩は激しいものです。

参考文献