web-dev-qa-db-ja.com

リバースプロキシサーバーにとってHTTP / 2はどういう意味ですか?

HTTP/2はプロキシサーバーの実装にどのように影響しますか?特に、たとえば、クライアントがHTTP /1.xのみをサポートするコンテンツサーバーにHTTP/2リクエストを送信する場合、プロキシサーバーはクライアントリクエストをに送信する前にHTTP/2リクエストをHTTP/1.xリクエストに変換する必要があります。コンテンツサーバー?また、コンテンツサーバーから応答を受信したら、プロキシサーバーは応答をHTTP/2形式に変換してから、クライアントに送り返す必要がありますか?

14
user3744927

はい、それはあなたが言う通りです。 HTTP/2からHTTP/1.1への変換は一方向で行われる必要があり、HTTP /1.1からHTTP/2への変換は他の場合に行われる必要があります。

実際には、これは、HTTP/2プロトコルは従来のテキストベースのパーサーを必要としませんが、包括的なHTTP/2サーバーは、HTTP/1.1のみのクライアントで動作するだけでなく、HTTP /1.1パーサーを必要とすることを意味します。クローラー)だけでなく、内部アプリケーションとの通信にも使用できます。

使用することにより、最も重要なアプリケーションプロトコルの1つはFastCGIです。 FastCGIでは、アプリケーションからのHTTP/1.1応答の解析と、クライアントへのHTTP/2応答への変換も必要です。

5
dsign

Dsignが説明したように、あなたの理解は正しいです。

ただし、HTTP/2が解決する問題(主にレイテンシー)は通常は短く、通常は高いので、エッジ接続(つまりリバースプロキシ)でのHTTP/2にはまだ大きな利点があることを指摘する価値があると思いましたリバースプロキシからコンテンツサーバーへの帯域幅ホップ。

たとえば、エッジでリバースプロキシに100ミリ秒の遅延があり、リバースプロキシとコンテンツサーバーの間に1ミリ秒の遅延しかない場合、コンテンツサーバーがプロキシサーバーにHTTP /1.1を話しているという事実はおそらくあまり影響を与えません。超高速の1msレイテンシーによるパフォーマンスの向上。したがって、エンドクライアント(HTTP/2をリバースプロキシと話す)は、HTTP /1.1よりも優れたパフォーマンスを誇っています。

8
Barry Pollard