CDN・エッジ

オリジンサーバー おりじんさーばー

CDNキャッシュエッジサーバーコンテンツ配信リバースプロキシフォールバック
オリジンサーバーって何?CDNとどう違うの?

簡単に言うとこんな感じ!

オリジンサーバーは「本物のデータが置いてある本店」だよ!CDNのエッジサーバーが「全国の支店」だとすると、オリジンは「すべての在庫の原本を持つ本社倉庫」みたいなもの。支店がデータを持っていないとき、本店に取りに行くんだ!


オリジンサーバーとは

オリジンサーバー(Origin Server) とは、Webサイトやアプリの「オリジナルのコンテンツ」を保持している、最も源泉となるサーバーのことです。HTMLファイル・画像・動画・APIのレスポンスなど、すべてのリソースの「正本」がここに存在します。

CDN(コンテンツデリバリーネットワーク)を使う構成では、ユーザーのリクエストはまず世界各地に分散配置されたエッジサーバー(キャッシュサーバー)が受け取ります。エッジサーバーにキャッシュ済みのデータがあればそのまま返しますが、キャッシュが存在しない・期限切れの場合には、エッジサーバーがオリジンサーバーに問い合わせて最新データを取得します。この「最後の答えを持っている場所」こそがオリジンサーバーです。

システム発注の観点では、オリジンサーバーのスペック・可用性・所在地がサービス全体の信頼性を左右します。CDNでキャッシュできるコンテンツはエッジで捌けますが、オリジンが落ちるとキャッシュ切れ時に全ユーザーへの影響が出るため、オリジンの冗長化は欠かせません。


オリジンサーバーの役割と構造

役割説明
コンテンツの正本管理HTMLや画像・動画など全リソースの「元データ」を保持する
動的コンテンツの生成ログイン状態やパーソナライズなど、キャッシュできないレスポンスを生成する
キャッシュミス時の応答エッジサーバーにキャッシュがないとき、代わりにレスポンスを返す
認証・決済処理セキュアな処理はオリジンで直接行う

リクエストの流れ(キャッシュヒット vs キャッシュミス)

【キャッシュヒット(エッジで解決)】
ユーザー → エッジサーバー → ✅ キャッシュあり → ユーザーへ返却
                                 (オリジンへの通信なし)

【キャッシュミス(オリジンへ問い合わせ)】
ユーザー → エッジサーバー → ❌ キャッシュなし → オリジンサーバー

                              エッジにキャッシュ保存 ←

                              ユーザーへ返却

オリジンサーバーが直接対応するケース

  • 動的ページ:ログイン後のマイページ、カート内容など個人に依存するコンテンツ
  • POSTリクエスト:フォーム送信・注文処理など書き込みを伴う操作
  • 認証トークンの検証:セキュリティ上、エッジに委ねられない処理
  • リアルタイムデータ:在庫数・株価など常に最新が必要な情報

歴史と背景

  • 1990年代前半:Webサーバーがすなわちオリジンサーバーであるシンプルな構成。全リクエストを1台のサーバーで捌いていた
  • 1990年代後半:インターネット普及によりトラフィックが急増。単一サーバーへの集中がボトルネックに
  • 1998年:Akamai Technologies創業。CDNという概念が登場し「エッジサーバーにコンテンツをキャッシュする」アーキテクチャが生まれた。これにより「元データを持つサーバー=オリジン」という概念が明確化された
  • 2000年代:CDNが普及し、オリジンサーバーとエッジサーバーの役割分担が業界標準に
  • 2010年代:クラウド化が進み、オリジンサーバー自体がAWSやGCPなどのクラウド上に置かれるケースが主流に。Auto Scalingによるオリジンの自動スケールも一般化
  • 2020年代エッジコンピューティングの発展により、オリジンで行っていた一部処理(認証・A/Bテストなど)をエッジで実行する動きが加速。オリジンへの負荷をさらに軽減する設計が進化している

CDN・エッジとの関係

オリジンサーバーとCDNの関係 ユーザー A (東京) ユーザー B (大阪) ユーザー C (NY) エッジサーバー① 東京POP(キャッシュ) エッジサーバー② 大阪POP(キャッシュ) エッジサーバー③ NY POP(キャッシュ) オリジンサーバー (本物のデータがある) 例: AWS EC2 / VPS キャッシュミス時のみ オリジンへ問い合わせ CDNエッジ(支店) オリジンサーバー(本店) エンドユーザー

オリジンサーバー vs エッジサーバーの比較

比較項目オリジンサーバーエッジサーバー(CDN)
役割コンテンツの正本保持・動的処理キャッシュ配信・負荷分散
台数少数(1〜数台)世界中に多数(数十〜数千)
応答速度ユーザーとの距離次第で遅い場合あり地理的に近く高速
扱うコンテンツ静的・動的どちらも主に静的コンテンツ
ダウン時の影響大(キャッシュ切れ時に全影響)中(他のエッジや直接アクセスで補える)
コスト処理能力に応じて変動CDN利用料(転送量課金が多い)

オリジンシールド(Origin Shield)とは

オリジンシールドは、複数のエッジサーバーとオリジンの間に中間キャッシュ層を設ける機能です。エッジが直接オリジンに問い合わせるのではなく、シールドサーバーが代表して問い合わせることで、オリジンへのリクエスト数を大幅に削減できます。

通常:    Edge①→Origin
         Edge②→Origin   ← オリジンに3回アクセス
         Edge③→Origin

シールド: Edge①→Shield→Origin
          Edge②→Shield         ← オリジンへは1回だけ
          Edge③→Shield

関連する規格・RFC

規格・RFC番号内容
RFC 7234HTTP/1.1 キャッシュ制御の仕様。Cache-Controlヘッダーによるオリジンとエッジのキャッシュ動作を定義
RFC 9111HTTP キャッシュの最新仕様(RFC 7234の更新版)。オリジンがレスポンスにキャッシュ可否を指示する方法を規定
RFC 7231HTTPセマンティクス全般。オリジンサーバーのレスポンスコード・ヘッダーの基本仕様

関連用語