大家好,我是阿萨。前几天我们学习了HTTP的瓶颈以及Ajax 和Comet 部分只是部分环节了HTTP的瓶颈,并没有从根本上解决HTTP协议的限制。
今天我们学习下持续开发过程中的SPDY协议,SPDY 虽然已经被抛弃,目前都转移到HTTP2.0 的协议开发下了。但是还是有必要了解下SPDY 是什么。
一SPDY 是什么?
引用baidu 百科的解释:
SPDY(读作“SPeeDY”)是Google开发的基于TCP的会话层 [1] 协议,用以最小化网络延迟,提升网络速度,优化用户的网络使用体验。SPDY并不是一种用于替代HTTP的协议,而是对HTTP协议的增强。新协议的功能包括数据流的多路复用、请求优先级以及HTTP报头压缩。谷歌表示,引入SPDY协议后,在实验室测试中页面加载速度比原先快64%。
二SPDY的设计与功能
SPDY 在HTTP 和SSL层之间添加了一层。见下图。
使用 SPDY 后,HTTP 协议 增强的功能有。
多路复用流
一次TCP 连接,可以无限制发送SPDY 请求。 所有请求都可以在一条TCP 连接上完成。
赋予请求优先级
SPDY 不但可以没有数量限制地发送所有请求。还可以给每个请求编个号码。同时编上轻重缓急的优先级。可以优先发送重要紧急的请求。
压缩 HTTP 首部
压缩后,字节就少了。效率就提升了。
推送功能
服务器可以主动推送更新部分到客户端,不需要客户端发送请求。
服务器提示功能
服务器可以主动提示客户端请求所需的资源。由于在客户端发现资源之前就可以获知资源的存在,因此在资源已缓存等情况下,可以避免 发送不必要的请求。
随着HTTP2.0的到来,SPDY逐渐合并到HTTP2.0了。
你会了吗?