Content Delivery Network (CDN)とは何ですか?
Content Delivery Network (CDN)は、世界各地に配置されたサーバー群で、ファイルをユーザーに近い場所に保存して配信し、ウェブサイトやアプリの読み込みを高速にし、安定させます。海の向こうから届く荷物を待つ必要がないように、欲しいお菓子を置いているコンビニが連なっているイメージです。
よくある誤解として、CDNを使うとアプリが中央集権化され、暗号資産の理念に合わないというものがあります。しかしそうではありません。CDNはフロントエンドのコードや画像、トークンリストなどの公開ファイルの配信を高速化するもので、オンチェーンのロジックやデータはそのままオンチェーン上に存在します。
Content Delivery Network (CDN)の仕組み
DeFiのダッシュボードやNFTマーケットプレイスを開く場面を想像してください。裏側では次のようなことが起こります(分かりやすく説明します)。
- Request: リンクをクリックして、index.htmlやトークンのロゴなどのファイルを要求します。
- Routing: DNSが最寄りのCDN拠点に案内するため、経路が短くなります。
- Cache: ファイルが既にあれば、瞬時に配信されます。
- Fetch: キャッシュに無ければ、CDNがオリジンサーバーからファイルを取得し、コピーを保存してから配信します。
- Shielding: TLSやレート制限、ボットチェックなどの追加機能が、アクセス急増時にも安定さを保ちます。
要するにそういうことで、実際かなりシンプルです。
Content Delivery Network (CDN)が重要な理由
速度は大事ですが、特に暗号資産のローンチやエアドロップに関わる人にとって、実際に関心を持つべき理由は次の通りです。
- Benefit: ページの読み込みが速くなり、タイムアウトが減り、人気のあるミント時にもリロードを繰り返すストレスが減ります。
- Perspective: 盛り上がる場面では大きなトラフィックの急増や 分散型サービス拒否攻撃(DDoS) の波がよく発生します。CDNはサービス稼働を維持するのに役立ちます。
- Relevance: 取引所のホームページ、エアドロップのクレームサイト、レイヤー2のエクスプローラー、ウォレットの更新ダウンロード、IPFSゲートウェイのフロントエンドなどで目にします。
静的なフロントエンドをContent Delivery Network (CDN)経由で配信し、スクリプトやスタイルにSubresource Integrityを追加しましょう。高速化と改ざん検査の両方が、余計な手間なく得られます。
Content Delivery Network (CDN)の主な特徴
この技術を知っておくべき点は次の通りです:
- Speed: ファイルが近くの拠点から配信されるため待ち時間が短くなります。
- Reach: 多くの世界各地の拠点があるため、マニラ、ベルリン、ナイロビのユーザーでも安定した性能が得られます。
- Resilience: トラフィックの急増を分散させるため、オリジンのサーバーに負担が集中しません。
- Cache: 賢いルールが何をどれくらい保存し、いつ更新するかを決めます。
- Security: TLS、WAF、レート制限などの追加機能が、盛り上がる時期にも安定性を保ちます。
種類
すべてのCDNが同じではありません。よく見かける種類は次の通りです:
- Traditional: 従来型:静的ファイルやメディアを多くの拠点にキャッシュするタイプ。
- Edge: エッジ型:ユーザー近くでコンピュートを行い、A/Bテスト、認証、APIの整形などを行えるもの。
- Peer: ピア型:コミュニティが配信を担うピアツーピアのコンテンツ配信。
- Private: プライベート型:企業が所有し、完全な制御やカスタムルーティングを可能にするもの。
Content Delivery Networkはブロックチェーンのデータを変えたり、ノードに代わったりするものではありません。公開ファイルをユーザーに近づけ、オリジンサーバーの負荷を軽減するだけです。
例
盛り上がったNFTミント時には、Content Delivery Network (CDN)がサイトや画像を近隣の拠点から配信するため、購入者は瞬時にページを確認でき、オリジンサーバーは落ち着いた状態を保てます。
豆知識
近年では、ウェブとWeb3の両方に対応するCDNもあり、IPFSゲートウェイやエッジ関数を提供しています。そのため、dAppが分散ストアから取得しても、カフェの遅いWiFiでもスマホで快適に感じられることがあります。
まとめ
暗号資産アプリを多くの人が同時に利用しても速く表示され、稼働を維持したいなら、Content Delivery Networkがその裏方として働きます。
