为什么FireFox中的HTTP/2速度较慢?

Chu*_*utt 0 firefox http http2

Akamai在他们的网站上有一个非常有趣的HTTP/2演示:

https://http2.akamai.com/demo

HTTP/2(HTTP的未来)允许通过单个TCP连接同时下载资源,减少了对spritesheets和连接的需求......据我所知,在有大量请求的网站上应该总是更快(比如在演示中) ).

当我在Chrome或Safari中尝试演示时,确实要快得多,但是当我在FireFox中测试它时,它一直都是SLOWER.同一台计算机,同一连接.

为什么是这样?

在此输入图像描述

所有主流浏览器(包括FireFox )显然支持 HTTP/2 ,所以它应该可以正常工作,但在这个现实世界的演示中,它在80%的时间内都比较慢.(在Chrome和Safari中,它在100%的时间内都会更快.)

在确保我清除了所有缓存之后,我在接下来的星期一再次尝试:

在此输入图像描述

我的操作系统:带有FireFox版本44.0.2的El Capitan版本10.11.3(15D21)

更新(2016年4月)

现在运行Firefox 45.0.1:

在此输入图像描述

还是慢一点!

sbo*_*det 6

你似乎有一个非常小的延迟和一个非常快的网络.

我对HTTP/1.1的典型结果是延迟= 40ms,load_time = 3.5s,HTTP/2始终快3倍.

使用像你这样的网络,其他效果可能会发挥作用.

根据我的经验,最重要的一个是实际谈判的密码.

HTTP/2要求使用非常强的密码,而HTTP/1.1(通过TLS)允许更弱,因此更快的密码.

为了比较苹果和苹果,您需要确保使用相同的密码.对我来说,对于这个Akamai演示,使用了相同的密码.

另一件可能很重要的事情是从http1.akamai.comHTTP/2 下载HTTP/1.1源,而从HTTP/2下载它们http2.akamai.com.对我来说,他们解决了不同的地址.

还应该分析在演示中报告的时间精确度:)

最终答案只能来自使用Wireshark等工具的网络跟踪.

对于比您的网络差的网络(可能是大多数网络),由于与延迟相关的HTTP/2优化(特别是多路复用),HTTP/2通常是明显的赢家.