SPDY
SPDY
由Google于2010发布,旨在解决HTTP的性能瓶颈,缩短Web页面的加载时间(50%)
HTTP的性能瓶颈
- 一条连接上只能发送一个请求
- 请求只能从客户端开始,客户端不能接收除响应以外的指令。
- 请求/响应首部未经压缩就发送,首部信息越多延迟越大
- 发送冗余首部。每次互相发送相同的首部造成的浪费较多。
- 可任意选择数据压缩格式,非强制压缩发送
SPDY的设计与功能
SPDY没有完全改写HTTP协议但是在TCP/IP的应用层与传输层之间通过新加会话层的形式运作。同时考虑到安全性问题,SPDY规定通信中使用SSL,架构如下图:
使用SPDY后,HTTP协议将获得以下功能:
- 多路复用
可以在一条TCP连接上处理无限多的HTTP请求 - 赋予请求优先级
- 压缩HTTP首部
- 推送功能
服务器可以主动向客户端推送数据 - 服务器提示功能
服务器可以主动提示客户端请求所需的资源
WebSocket
WebSocket的设计与功能
WebSocket:Web浏览器与Web服务器之间的全双工通信标准。主要是为了解决Ajax和Compt中XMLHttpRequest附带的缺席所引起的问题
特点
由于是建立在Http协议上的协议,因此连接的发起方仍是客户端,而一旦确立WebSocket通信连接,不论服务器还是客户端,任意一方都可以直接向对方发送报文。
- 推送
- 减少通信量