Http2プロトコルでApacheTomcat 8.5の前でmod_proxy
を使用することは可能ですか?はいの場合は、構成例を見るとよいでしょう。
編集
具体的には、クライアントとサーバーの間でhttp2を使用すること(Apache httpd
)、およびApache httpd
とApache Tomcat
の間のajp
でデータストリームを続行することは可能であり、推奨されますか?
編集2
この回答は、トピックに関する詳細を提供します。
Apachehttpdは2.4.21からHTTP/2プロキシのサポートを追加しましたが、このモジュールは現時点ではまだかなり変更されているため、最新(執筆時点では2.4.27)を実行することをお勧めします。
TomcatはTomcat9にHTTP/2サポートを追加しました: https://readlearncode.com/configure-Tomcat-9-for-http2/
したがって、理論的には、これらのバージョンにアップグレードする(そして、HTTP/2に必要なOpenSSL1.0.2以降をインストールする)場合は、これらすべてがうまく調和するはずです。
ただし、実際にはまだすべて非常に新しいため、バグが発生する可能性があります。正直なところ、HTTP/2の最大のメリットは、クライアントからサーバーへの接続など、待ち時間の長い接続です。 mod_proxyを使用したApacheからTomcatへのサーバー間接続では、ゲインが少なくなります。
したがって、これらがどれほど新しいかを考えると、ApacheWebサーバー(またはHTTP/2をサポートする他のWebサーバー)でHTTP/2を使用し、mod_proxyを使用してHTTP /1.1またはAJP経由でTomcatに接続することをお勧めします。これにより、完全なエンドツーエンドのHTTP/2を取得するためにすべてをアップグレードする手間やリスクなしに、HTTP/2のパフォーマンスの向上のほとんどが得られます。
2017年7月の時点で、Apache mod_proxy
はHTTP/2.0プロトコルをサポートしていません。 mod_proxy_http2
1 モジュールがありますが、まだ実験段階です。
2番目の編集で提供されたStackOverflowの回答で詳しく説明されているように、mod_http2
を使用してApache側でHTTP/2.0サポートを有効にし、HTTP /1.1またはAJPを使用してTomcatサーバーと通信できます。しかし、HTTP /2.0の最大の機能の1つである多重化が失われます。