リバースプロキシとは何ですか?
リバースプロキシは、クライアント (あなたのユーザー) とオリジンサーバーの間に位置し、あなたに代わってリクエストを受信し応答するアプリケーションです。
リバースプロキシの仕組み
リバースプロキシは、Webサイトをホストしているオリジンまたは別のサーバーにインストールされます。リクエストがオリジンに送信されると、リバースプロキシが仲介役として機能します。リクエストを確認し、リクエストされたオブジェクトがキャッシュにある場合は、それをクライアントに提供します。リクエストされたオブジェクトがキャッシュにない場合、リバースプロキシはリクエストをオリジンに転送します。その後、レスポンスからコンテンツをキャッシュし、将来のリクエストがキャッシュから提供されるようにします。
リバースプロキシとフォワードプロキシ
上図のように、リバースプロキシはクライアントとサーバーの間に配置されます。クライアントからのリクエストを受け付け、そのレスポンスをオリジンサーバーとして返すか、またはオリジンにリクエストを送信してからレスポンスを返します。リバースプロキシの目的は、トラフィックを処理し、そのアイデンティティを隠すことでサーバーを保護することです。
一方、フォワードプロキシはクライアントを保護します。フォワードプロキシはクライアントとインターネットの前に位置し、クライアントに代わってリクエストとレスポンスを転送します。このようにして、クライアントは自身のアイデンティティを隠し、不明なトラフィックをブロックすることができます。
リバースプロキシを使用することのメリット
1. キャッシュ
前述のように、リバースプロキシを使用すると、アセットのコピーを保存して、どのユーザーからの後続のリクエストも、生成を待たずにすぐに配信できます。すでに生成されたアセットをキャッシュするということは、オリジンサーバーに追加の作業をしなくても、そのアセットのリクエストにすぐに応答できるということです。これにより、ユーザーのエクスペリエンスが高速化され、オリジンへのトラフィックに対して料金を支払う必要がないため、コストを節約できます。オリジンは引き続きいくつかのリクエストを処理する必要がありますが、それほど多くは処理されません。さらに、リバースプロキシは応答を送信する前にHTTPデータを圧縮できるため、配信も速くなります。
2. ロードバランシング
リバースプロキシが応答時間を最適化するもう1つの方法は、コンテンツの需要を調整することです。Webサイトの人気が急上昇し、何千もの同時リクエストが受信され始めると、オリジンサーバーに過負荷がかかり、Webサイトがクラッシュする可能性があります。キャッシュからコンテンツを提供することで、すべてのトラフィックが一度にオリジンに到達するのを防ぐことができます。複数のソースオリジンがある場合、リバースプロキシはそれらのサーバーにリクエストを分散できます。Webサイトがダウンした場合でも、ユーザーはキャッシュされたコンテンツにアクセスできるため、ダウンタイムが発生する必要はありません。
3. セキュリティ
リバースプロキシは、オリジンを保護するために追加のセキュリティレイヤーを提供します。Webサイトが何千もの同時リクエストを受け取り始める上記の例をもう一度考えてみましょう。これらが正当なリクエストではなく、分散型 DDoS 攻撃 (DDoS) のような、Webサイトへの攻撃だった場合はどうなるでしょうか?リバースプロキシを導入することで、攻撃を吸収し、悪意のあるトラフィックがオリジンサーバーに到達してWebサイトがダウンするのを防ぐことができます。
Fastly はリバースプロキシとして機能するのか?
Fastly のようなコンテンツ配信ネットワークサービスはリバースプロキシですが、より大規模なスケーラビリティで機能します。Fastly のコンテンツ配信ネットワークサービスは、クライアントとお客様のオリジンサーバーの間に位置するキャッシュサーバーのネットワーク全体で構成されており、これを配信拠点と呼んでいます。Fastly ネットワークは、世界中に分散され、高密度のインターネット・エクスチェンジ・ポイントでインターネットに接続された多数の物理サーバーで構成されています。ネットワーク内の各キャッシュサーバーは、オリジンからキャッシュコンテンツをキャッシュし、最も近いクライアントからのリクエストに応答します。
グローバルに分散された Fastly のネットワークは、分散型サービス妨害 (DDoS) 攻撃にも対処します。Fastly の標準コンテンツ配信ネットワークサービスの一部として、すべてのお客様は、DDoS 脅威からコンテンツの可用性を保護するのに役立つ Fastly エッジクラウドネットワークに固有の機能の組み合わせにアクセスできます。
Fastly は、高速であるだけでなく、高度にカスタマイズ可能な基盤となるアーキテクチャとして Varnish のキャッシュリバースプロキシを使用します。当社のアーキテクチャでは、静的、動的、ビデオコンテンツを含むすべてのタイプのコンテンツをキャッシュし、変更があった場合はプログラムでパージできるため、キャッシュを最大限に活用できます。Fastly の CDN によってビジネスの成長をどう促進できるか興味がおありの場合は、早速無料アカウントにサインアップしてください。
Fastly CDN の詳細