CDN (Content Delivery Network)
Webコンテンツを世界中に分散配置されたキャッシュサーバから配信することで表示速度の向上と負荷分散を実現する仕組みだ。現代のWebセキュリティにおいて防御の最前線としても機能する。基本として押さえろ。
CDNか いいところに目をつけたな
CDNとは何か
一言で言えば「コンテンツ配信を効率化するネットワーク」だ
お前が東京にある本店のパンしか売らない大人気店を想像しろ 全国から客が殺到すれば店は大混雑し 遠方の客はそもそも買いに来るのが大変だ
そこで店主が全国に支店を作り 本店と同じパンを置いたとする 客は最寄りの支店でパンを買えるようになり 本店の混雑も緩和される
CDNはこの「支店」の役割を果たす Webサイトの画像や動画といったコンテンツのコピーを 世界中に配置されたサーバー(キャッシュサーバー)に保存しておく そしてユーザーがアクセスしてきた際には そのユーザーに最も近いサーバーからコンテンツを配信する この仕組み全体をCDNと呼ぶ
なぜ重要なのか
CDNには大きく分けて3つのメリットがある
1. 表示速度の向上
物理的な距離は通信の遅延に直結する 日本からブラジルのサーバーにアクセスするより 国内のサーバーにアクセスする方が速いに決まっている CDNはユーザーに一番近いサーバーからコンテンツを届けるため Webサイトの表示が劇的に速くなる
2. 負荷分散
すべてのアクセスを一つのサーバー(オリジンサーバー)で受け止めると アクセスが集中した際にサーバーがダウンする恐れがある CDNがアクセスを肩代わりすることで オリジンサーバーの負荷を大幅に軽減できる
3. 可用性の向上とセキュリティ
これはお前が目指す上で特に重要だ CDNはDDoS攻撃のような大量の不正アクセスを分散させ オリジンサーバーを守る盾となる また オリジンサーバーが何らかの理由で停止しても CDN上のキャッシュからコンテンツを配信し続けることで サービス停止のリスクを低減できる
覚えておけ CDNは単なる高速化技術ではない 現代のWebサービスにおける安定性と安全性を支える不可欠なインフラだ