Jetty:可以使用SPDY / 3.1吗?

时间:2015-02-04 13:06:50

标签: java jetty spdy

我使用JDK 1.8和ALPN运行Jetty服务器,如:How to run Jetty with SPDY using ALPN?

所述

有一句话:

ALPNServerConnectionFactory alpn = new ALPNServerConnectionFactory("spdy/3", "http/1.1");

HTTPSPDYServerConnectionFactory spdy = new HTTPSPDYServerConnectionFactory(SPDY.V3, httpConfig, push);

但Chrome 40仅使用“spdy / 3.1”和“http / 1.1”。启用ALPN调试后,它看起来像:

[S] ALPN protocols [spdy/3.1, http/1.1] received from client for 1987cc45[SSLEngine[hostname=169.0.1.126 port=59439] SSL_NULL_WITH_NULL_NULL]

谈判以http/1.1结束。所以我将这一行改为:

ALPNServerConnectionFactory alpn = new ALPNServerConnectionFactory("spdy/3.1", "http/1.1");

这样可以选择spdy/3.1

[S] ALPN protocol 'spdy/3.1' selected for 1987cc45[SSLEngine[hostname=169.0.1.126 port=59439] SSL_NULL_WITH_NULL_NULL]

但Chrome没有收到回复。我没有在服务器端发现任何异常,但似乎Jetty无法使用SPDY / 3.1。

Jetty可以使用SPDY / 3.1吗?如何设置?

我使用JDK 1.8.0_31并在bootstap alpn-boot-8.1.3.v20150130.jar中使用。

1 个答案:

答案 0 :(得分:1)

Jetty不支持SPDY/3.1,最多只支持SPDY/3

事实上,Jetty永远不会支持SPDY/3.1

SPDY和NPN刚刚从即将发布的Jetty 9.3.0版本的代码树中删除。

http://git.eclipse.org/c/jetty/org.eclipse.jetty.project.git/commit/?id=2162455b72d5a474bba47d5daf5543d46c2688be