spdy / 3协议
回到家时,我正在听Mark Nottingham(主持IETF HTTP工作组的人)在HTTP / 2上的播客,了解HTTP协议即将发生的变化非常有趣。 发布我进行了一些研究,并就HTTP / 2共享了一些有趣的发现 。
互联网的骨干已经有很长时间了,HTTP尚未经过重大修订(1997年发布了1.1版),并且通过播客得知标准通常具有更长的周期(即使在当今的敏捷世界中)。
HTTP / 2 RFC 7540于2015年5月发布,现已向所有人开放。
“非常有趣的事实是它基于由Google开发的SPDY(发音Swift),经过多次讨论,Google决定为HTTP / 2(对行业而言是伟大的)做出贡献。”
根据对这个主题的研究,我总结了主要发现 :
什么没有改变?
一个。 没有新动词/方法
没有新的动词(也称为方法),它将保留其当前子集-POST,GET,HEAD,OPTIONS,PUT,DELETE,TRACE和CONNECT。 有趣的是,HTTP 1.1中添加了最后5种方法。
b。 Cookies的方法没有变化
由于出于兼容性方面的考虑,因此没有关于更改状态相关机制的提议。
C。 HTTP 1.1将上线
没有用HTTP / 2代替HTTP 1.1的力量,它将让业界决定其未来。 实施者将在其中发挥更大的作用。
发生了什么变化(重大变化)?
一个。 文本到二进制
容易猜到,文本更加用户友好,但是二进制文件总是会更快(我听说它很大程度上取决于实现提供程序,但是性能可以提高10%至15%)。 而且,它降低了协议的详细程度。
b。 行头阻止(HOL阻止)或HTTP管道传输到完全多路复用
如果您使用过Firebug,您会注意到典型的网页向服务器发出许多HTTP请求以更快地加载页面,从而导致与服务器的许多连接。 多路复用将有助于从一个来源开始每页仅打开一个连接。 好消息!
C。 多连接到单连接
在以上几点中进行了解释,但这又是值得一提的:-)
d。 详细报头到报头压缩(HPACK)
HPACK是一种压缩格式,将用于表示HTTP标头。 既然头文件已被压缩(更少的数据需要传输),那么程序员将更容易利用头文件。 考虑使用GZIP,但出于安全考虑而将其丢弃。
e。 仅拉至N推
服务器推送将被允许给客户端,是的,这可以催生许多新的设计模式。 客户可以选择将其关闭。
根据h2check ,16%的网站(包括twitter,google,facebook)支持HTTP / 2 + SPDY:
Google Chrome Canary,Internet Explorer 11,Safari 9和Firefox 36提供了对HTTP / 2的完全支持。 祝你未来好运!!
spdy / 3协议