如何在Tomcat中实现HTTP2?以及检测方法

2019.09.04 -

   

  完整的HTTP2支持添加到最新版本的Tomcat9.x.。HTTP/2速度比HTTP/1.1快得多。如果您直接从Tomcat向浏览器提供内容(不通过Web服务器,那么实现HTTP/2可以大大减少应用程序加载时间并整体提高性能。建议在非生产环境中对此进行测试,以确保应用程序按预期运行。

http2

如何在Apache和Nginx中启用HTTP/2?

  在实施HTTP2之前,必须使用SSL/TLS证书保护Tomcat。

  如何在ApacheTomcat中实现SSL?

   1.登录TomcatServer并转到安装文件夹

   2.转到conf文件夹

   3.使用vi或您喜欢的编辑器修改server.xml文件

   4.在SSL连接器中添加以下内容

  修改后的总体代码如下:

<Connectorport=”443″protocol=”org.apache.coyote.http11.Http11AprProtocol”

  maxThreads=”150″SSLEnabled=”true”>

  <CertificatecertificateKeyFile=”conf/key.pem”

  certificateFile=”conf/cert.pem”

  certificateChainFile=”conf/chain.pem”

  type=”RSA”/>

  以上是我的实验室配置,因此如果您要复制它,请不要忘记调整配置以适应您的环境要求。尤其是使用自定义和证书路径的端口。

  通过转到bin文件夹重新启动Tomcat实例并执行以下脚本

  ./shutdown.sh

  ./startup.sh

  检查catalina.out日志,您应该看到以下配置为支持h2的确认

24-Feb-201919:43:47.559INFO[main]org.apache.coyote.http11.AbstractHttp11Protocol.configureUpgradeProtocolThe[“https-openssl-apr-443”]connectorhasbeenconfiguredtosupportnegotiationto[h2]viaALPN

  这意味着Tomcat已准备好通过HTTP2协议提供请求。

  测试Tomcat是否在H2上运行

  你怎么知道它是否按预期工作?有多种方法可以测试它。使用Chrome用于测试Intranet应用程序。

      1.启动GoogleChrome

      2.按F12打开开发人员工具

      3.转到网络选项卡

      4.访问您的Tomcat应用程序并注意Protocol列

  当你看见protocol列上显示h2则说明配置以及成功。

  使用日志

  查看access.log文件并查看传入的请求。

  xx.xxx.xxx.xxx–[24/Feb/2019:20:59:23+0000]”GET/HTTP/2.0″20011468

  xx.xxx.xxx.xxx–[24/Feb/2019:20:59:23+0000]”GET/tomcat.cssHTTP/2.0″2005931

  xx.xxx.xxx.xxx–[24/Feb/2019:20:59:23+0000]”GET/tomcat.pngHTTP/2.0″2005103

  xx.xxx.xxx.xxx–[24/Feb/2019:20:59:23+0000]”GET/bg-button.pngHTTP/2.0″200713

  xx.xxx.xxx.xxx–[24/Feb/2019:20:59:23+0000]”GET/bg-upper.pngHTTP/2.0″2003103

  xx.xxx.xxx.xxx–[24/Feb/2019:20:59:23+0000]”GET/bg-nav.pngHTTP/2.0″2001401

  这个可以很清晰的看见GET的HTTP/2.0请求。

  在Tomcat上实现H2非常简单。我建议您在实施后测试您的应用程序,以确保没有副作用。如果您想了解更多关于http/2.0的内容,请阅读相关文章:http2是什么

本站文章禁止转载,违者必究
阅 731
0

  完整的HTTP2支持添加到最新版本的Tomcat9.x.。HTTP/2速度比HTTP/1.1快得多。如果您 […]

湘公网安备 43011102001693号

    湘ICP备19003021号-1