オリジン サーバーは、着信要求またはトラフィックをリッスンして応答するように設計されたプログラムを実行するコンピューターです。これには Web ページの元のバージョンが含まれており、要求に応じてエンド ユーザーにコンテンツを配信する役割を果たします。
オリジンサーバーはどのように機能しますか?
オリジン サーバーはリクエストを受け取り、Web サイトまたは Web ページのコンテンツを提供します。ユーザーが Web サイトで Web ページを開くと、オリジン サーバーに要求が送信され、コンテンツが取得されます。オリジン サーバーがエンド ユーザーからどれだけ離れているかによっては、レイテンシと呼ばれる遅延が発生する可能性があります。
さらに、ユーザー側のクライアントと配信元サーバーも、SSL/TLS プロトコルを使用して安全な接続を確立する必要があり、余分なラウンドトリップ時間 (RTT) が発生します。 RTT は、ブラウザーが情報を要求してから応答を受信するまでのミリ秒単位の合計時間と考えることができます。物理的な距離に加えて、トラフィック、ノード、および中間 Web サーバーの量も RTT に影響を与える可能性があります。
オリジン サーバーは、Web サイトの所有者によって維持および更新されます。このような各サーバーには、トラフィックを受け入れることができない一定の容量があり、要求を受信し続けると、ダウンタイムが発生する可能性があります。配信元サーバーでダウンタイムが発生している場合、または速度が遅い場合、エンド ユーザーはコンテンツを予定どおりに配信できなかったり、まったく配信されなかったりします。
オリジン サーバーとエッジ サーバーの違いは何ですか?
オリジンサーバーは、エッジサーバーまたはコンテンツ配信ネットワークまたは CDN キャッシングサーバーに関連して一般的に使用される概念です。オリジン サーバーにはオリジナル バージョンのコンテンツが含まれていますが、エッジ サーバーは多数あり、世界中のさまざまな場所に分散しています。
CDN の場合、エッジ サーバーはコンテンツ配信ネットワークの端にあります。エッジ サーバーは、コンテンツの格納またはキャッシュを担当し、リクエストを迅速に処理して、近くにいるエンド ユーザーにコンテンツを配信する役割を果たします。このようにして、エッジ サーバーはオリジン サーバーの負荷を軽減し、キャッシュされていないアセットを取得する場合にのみ、オリジン サーバーにアクセスします。
CDN でも、オリジン サーバーは重要な役割を果たします。これらには、認証に使用される主要なサーバー側コードとデータベースが含まれています。
CDN はオリジンサーバーからどれくらいの帯域幅をオフロードできますか?
CDN はコンテンツ配信の大部分を管理しますが、配信元サーバーからすべてのタスクをオフロードするわけではありません。オフロードできるタスクの正確な量は、CDN の機能と Web サイトの独自の側面によって異なります。
大まかに言えば、CSS ファイル、画像、静的 HTML、Javascript ファイルなどの静的リソースを CDN サーバーにキャッシュできます。また、これらは帯域幅使用量のほぼ半分を占めており、エッジ サーバーから配信される場合は節約できます。さらに、外出先で生成された WordPress HTML ファイルなどの動的コンテンツも、高度な CDN を使用してキャッシュできます。この場合、節約される帯域幅は 80% 以上になる可能性があります。
CDN エッジ サーバーがオリジン サーバーと対話する方法
CDN エッジ サーバーは、オリジン サーバーがコンテンツを前者に配信するときに、オリジン サーバーと対話します。この 2 つは、プッシュ方式またはプル方式を使用して相互に通信できます。プッシュ方式では、オリジン サーバーに加えられた変更で CDN を更新します。これは、CDN がオリジン サーバーから新しいコンテンツを自動的にプルするプル方式よりも効果的ではありません。
エンド ユーザーに配信されるコンテンツに静的アセットが含まれるか動的アセットが含まれるかによって、エッジ サーバーとオリジン サーバーが果たす役割もわずかに異なります。サービスにアクセスする前にユーザーを認証する必要があるログイン ページの例を考えてみましょう。 Web ページにダウンロードされるアセットは、HTML ページ、対応する CSS ファイル、画像ファイル、JavaScript ライブラリなどの静的アセットであることが理想的です。これらはすべての Web サイト訪問者に共通の静的ファイルであるため、キャッシュしてエッジ サーバーから直接提供できます。それらは、オリジンサーバーに煩わされたり、帯域幅を消費したりすることなく、エッジサーバーからロードできます.
ただし、ユーザーがログインの詳細を入力すると、エッジ サーバーに移動する必要がある動的コンテンツがいくつかあります。ここから、エッジ サーバーは要求をオリジン サーバーに中継します。また、ユーザーのアカウント情報を返す前にデータベースと比較してログインの詳細を検証するのは、オリジン サーバーです。
CDN を適切に機能させるには、エッジ サーバーをインバウンド HTTP 要求の宛先として指定する必要があります。このためには、ドメイン ネーム システム (DNS) にいくつかの変更を加える必要があります。これにより、ドメインへの要求がエッジ サーバーの 1 つにルーティングされます。コンテンツがエッジ サーバーから配信されているかどうかを確認するには、アセットの応答ヘッダーを確認します。
CDN はオリジンサーバーを保護しますか?
オリジンサーバーは、Web サイトのコンテンツを保存する上で重要であるため、サイバー攻撃から保護する必要があります。 CDN は、オリジン サーバーを特定の着信トラフィックから保護することで、この点で役立ちます。彼らはいくつかの方法でこれを行います
着信トラフィックの検査
CDN は受信 HTTP/S リクエストを検査して、SQL インジェクションやクロスサイト スクリプティングなどの Web アプリケーション攻撃を特定して除外します。これは、トラフィックを直接送信して配信元サーバーを奪うことを意図したアプリケーション レイヤー攻撃など、特定の種類の DDoS 攻撃に対しても役立ちます。
オリジンサーバーのIPアドレスを隠す
CDN は、ネットワーク層の DDoS 攻撃などの IP への直接攻撃からオリジン サーバーを保護するのにも役立ちます。これは、オリジン サーバーの実際の IP アドレスを非表示にし、ドメイン解決要求を CDN プロバイダーの IP にルーティングすることによって行われます。
トラフィック スパイクの管理
CDN は、Web サイトへのトラフィックの急増を処理するように設計されています。オリジン サーバーに大量の Web トラフィックが殺到すると、Web サイトの中断やダウンタイムが発生する可能性があります。 CDN は、オリジン サーバーに過度の負担をかけることなく、このトラフィック スパイクをネットワーク全体に分散するのに役立ちます。