HTTP/2 呼之欲出,Google 不再开发 SPDY

  • Abel Avram
  • 曹知渊

2015 年 2 月 12 日

话题:GoogleDevOps

在 HTTP/2.0 集成了 SPDY 并进入标准化的最后阶段时,Google 宣布不再开发 SPDY。

HTTP/1.1 在 1999 年由RFC 2616定为标准,从那以后,整个互联网就一直基于它在运行,其间有人提出了总共 10 个更新版本或替代协议,但是有些版本被认为还有改进的空间,尤其是性能方面。Google 也是尝试改进 HTTP/1.1 的公司之一,他们在 2009 年发布了 SPDY 协议。通常情况下,这种尝试获得成功的机会微乎其微,因为互联网有庞大的历史包袱,但 Google 有一件武器能使 SPDY 流行起来:Chrome。他们搭建了自己的网站,修改了 Chrome 来支持 SPDY,用户被其更好的性能所吸引,把压力留给了其他网站和浏览器开发商。

根据W3Techs的统一,目前,在全球超过12 亿的网站中,有 3.4% 使用了 SPDY 协议。这个比例看起来不高,但这份名单中包括了一些最大的网站,有 Google、Facebook、Yahoo!、Twitter、YouTube、Wordpress 等,这使得互联网每天通过 SPDY 协议来承载的页面流量在总流量数中占了相当大的份额。

负责 HTTP/2.0 标准化工作的IETF HTTPBIS 工作小组在 2012 年的一次讨论中,决定把 SPDY 作为 HTTP/2.0 的原型,但一开始他们没有想完全采用它。微软也提出了他们自己的提案,称为HTTP Speed+Mobility。三年后,看起来 SPDY 已经在竞争中胜出,它已经被 HTTPBIS 工作小组采纳为 HTTP/2.0,并且进入标准化流程的最后阶段。

由此,Google 宣布 SPDY 将于 2016 年头退休,转而采用 HTTP/2.0。对于 Google 旗下的网站和 Chrome 来说,只是换了个协议名字,协议本身没什么变化。最新的 Chrome 40 里面有个 SPDY/4 开关,有兴趣测试 HTTP/2.0 的人可以打开它。Google 也打算不再让 Chrome 支持NPN协议,转而支持ALPN协议,并建议开发者使用最新的 TLS 扩展

根据 CanIUse 的统计,目前 Firefox、Chrome、Safari、Opera、iOS 版 Safari、Android 版 Chrome、Windows 8 上的 IE 11 都已经支持 HTTP/2.0,有些需要打开选项,有些不需要。Windows 10 预览版自带的浏览器也支持它。Apache、Windows 10 上的 IIS 和 nginx 都已经实现了 SPDY 3.1 或 4(这就是 HTTP/2.0)。剩下的就是网站管理员们去升级服务器软件了。

查看英文原文:Google Dumps SPDY after HTTP/2 Enters "Last Call"

GoogleDevOps