Web制作者なら知っておきたいCDNの仕組みと使い方
Web制作の現場でよく目にする「CDN」「CDNJS」「Cloudflare」という言葉。なんとなく使っているけど、実は仕組みやビジネスの裏側までは知らない……という方も多いのではないでしょうか?
この記事では、
- CDNってそもそも何?
- どうやってアップロードされるの?
- 個人でも使える?
- お金はかかるの?
- CSSファイルも配信できる?
- Cloudflareってどうやって儲けてるの?
……という疑問に一つずつ答えていきます!
CDNとは?
CDN(Content Delivery Network)は、画像・CSS・JavaScriptなどのWebコンテンツを世界中の複数のサーバーに分散して置き、ユーザーに最も近い場所から高速に配信する仕組みのことです。
たとえば、東京のユーザーがアメリカのサーバーにあるサイトを開くと、距離のぶん遅延が発生します。CDNを使えば、東京にもキャッシュされたコピーがあるので、そこから即座に配信されて表示が速くなります。
cdnjsにどうやってアップロードされるの?
cdnjsはオープンソースプロジェクトのライブラリ集で、CloudflareがホスティングしているCDNサービスです。ですが、誰でも自由にアップロードできるわけではありません。
アップロードの流れ(開発者向け):
- GitHub上のcdnjsのリポジトリにプルリクエストを送る
- 審査とマージ(条件を満たしていればCloudflareチームがOK出す)
- CDNネットワーク上に反映
※必須条件:プロジェクトがオープンソースであること、一定の人気や需要があることなど
個人のポートフォリオなどをcdnjsにアップロードすることは基本的にできません。あくまで「広く使われているライブラリ」のためのCDNです。
CDNにCSSはないの?JavaScriptだけ?
CSSも普通にあります!
CDN=JavaScriptのイメージが強いですが、実際は…
- CSS(Bootstrapなど)
- フォント(Google Fonts、Font Awesome)
- 画像(CDN付きのブログサービスなどでは画像も配信)
- JSONデータやAPIレスポンス など
もCDNで配信可能です。つまり、HTML以外のほとんどの静的ファイルはCDNで高速化できるんです。
Cloudflareとは?
Cloudflare(クラウドフレア)は、アメリカ発の大手インターネットインフラ企業で、主に次のようなサービスを提供しています。
- CDN(コンテンツ配信)
- WAF(Webアプリケーションファイアウォール)
- DDoS対策
- DNSサービス
つまり、「Webサイトを高速・安全に届ける」ための技術やサービスを広く提供している会社です。
このCloudflareが提供しているサービスの一つが「CDN」です。誰でも無料で利用できるように公開されており、Web開発者にとってはとてもありがたい存在です。
Cloudflareってどうやって利益出してるの?
Cloudflareは「無料で使えるCDN」も提供してますが、もちろんそれだけではビジネスが成り立ちません。
主な収益源は以下のとおり:
- 企業向けプレミアムプラン
大企業や政府機関などが、より強力なCDN/WAF/セキュリティを求めて有料プランを契約。 - セキュリティ対策(WAF, DDoS Protection)
攻撃防止や防御機能が必要なサイト向けに高機能なセキュリティを販売。 - エッジコンピューティング(Cloudflare Workersなど)
サーバーレス機能をCDNの近くで実行。高速&柔軟で有料利用も増加中。 - ドメインやDNSの商用サービス
無料プランを大量に提供して市場シェアを拡大し、プレミアム層から収益を得る「フリーミアムモデル」をとっています。
CDN / CDNJSを使うメリット
- 高速配信
ライブラリが世界中にキャッシュされているため、アクセスが速い。 - サーバー負荷の軽減
自サイトでファイルをホストする必要がないため、サーバーの負荷が軽くなる。 - キャッシュの共有
多くのWebサイトで同じCDNリンクが使われているため、すでにユーザーのブラウザにキャッシュされている場合があり、さらに読み込みが速くなる。 - 簡単・手軽
HTMLにCDNのURLを貼り付けるだけで導入できるため、初心者でも簡単。
まとめ:CDNは速く・軽く・安全なWebの味方
- CDNは世界中にデータをキャッシュして配信する仕組み
- cdnjsはCloudflareが提供する無料のCDNライブラリ集
- 使うのは簡単!でもアップロードには条件あり
- CSSやフォントなど、JS以外もCDNで配信できる
- Cloudflareはエンタープライズ課金やセキュリティで利益を得ている
Web制作をしている人なら、「CDNの正体」と「Cloudflareのポジション」を知っておくことで、よりパフォーマンスやセキュリティに強いサイトが作れるようになりますよ!