如何使我的 Web 应用程序与 SPDY、Jetty 一起工作 [关闭]
Posted
技术标签:
【中文标题】如何使我的 Web 应用程序与 SPDY、Jetty 一起工作 [关闭]【英文标题】:How to make my web application working with SPDY, Jetty [closed] 【发布时间】:2015-05-02 03:19:59 【问题描述】:我在 eclipse 的一个动态项目中有一个简单的 web 应用程序,它只包含一个 html 页面和一个 http servlet。直到现在我一直使用tomcat。 Tomcat 的 SPDY 支持在其当前形式中不可用,所以我必须将我的应用程序移动到 Jetty。 为了使我的应用程序与 spdy 一起工作,我必须重新编写我的应用程序,或者我只需配置 jetty 以与 spdy 一起工作? 你能帮帮我吗?
更新:我在 .war 文件中有我的 HTTP/1.1 应用程序,我从 my-9.2.x-jetty-distribution/webapps 中的 tomcat/webapps 复制了这个文件,我设置了码头,它按预期工作。为了使这个应用程序与 spdy 一起工作,我必须使用 npn-boot 运行 jvm,然后我必须按照文档描述配置 xml 文件,但没有说明这些 xml 文件必须放在哪里。我的问题在于最后两个步骤。
【问题讨论】:
您知道SPDY is deprecated 支持 HTTP/2,对吧? 我很了解,但是我必须使用spdy。 【参考方案1】:假设它是针对标准 API 编写的,您无需更改 Web 应用中的任何一行。
为了让它在 Jetty 中工作,您只需要按照Jetty documentation 中的说明进行操作即可。
您至少需要 JDK 7 和 Jetty 9.2.x。
Jetty 项目在 Jetty 9.3.x 中移除了对 SPDY 的支持,转而支持 HTTP/2,但如果您需要使用 SPDY,您可以继续使用 Jetty 9.2.x。
不过,我会考虑直接迁移到 HTTP/2。 Firefox 和即将推出的 Chrome 等浏览器已经默认使用 HTTP/2,因此 SPDY 的寿命将非常短(事实上,它已经被淘汰了)。
【讨论】:
谢谢@sbordet,我今天发现了码头。我整天阅读这个文档,但是我不知道如何使用这些 xml 文件。我也有运行 npn-boot 的问题:“java -Xbootclasspath/p: C:\npn-boot-1.1.8.v20141013.jar”,我下载了与我的 jdk 对应的正确版本。文档很好地描述了 xml 文件,但没有说明放置它们的位置。 @david6630 如果您打算使用 npn 或 alpn,请确保您使用的是 Oracle Java 版本,而不是 OpenJDK。 @joakim Erdfelt 我正在使用 oracle java 版本,jdk 更新 67。 @david6630 请阅读how to start Jetty 部分和deploy your webapp 部分。这应该足以让您入门。以上是关于如何使我的 Web 应用程序与 SPDY、Jetty 一起工作 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章