帧:HTTP/2 数据通信的最⼩单位消息:指 HTTP/2 中逻辑上的 HTTP 消息。例如请求和响应等,消息由⼀个或多个帧组成。
流:存在于连接中的⼀个虚拟通道。流可以承载双向消息,每个流都有⼀个唯⼀的整数ID
HTTP/2 采⽤⼆进制格式传输数据,⽽⾮ HTTP 1.x 的⽂本格式,⼆进制协议解析起来更⾼效。
HTTP/1.x会在请求和响应中中重复地携带不常改变的、冗⻓的头部数据,给⽹络带来额外的负担。
你可以理解为只发送差异数据,⽽不是全部发送,从⽽减少头部的信息量
服务端可以在发送⻚⾯HTML时主动推送其它资源,⽽不⽤等到浏览器解析到相应位置,发起请求再响应。例如服务端 可以主动把JS和CSS⽂件推送给客户端,⽽不需要客户端解析HTML时再发送这些请求。
服务端可以主动推送,客户端也有权利选择是否接收。如果服务端推送的资源已经被浏览器缓存过,浏览器可以通过发 送RST_STREAM帧来拒收。主动推送也遵守同源策略,服务器不会随便推送第三⽅资源给客户端。
HTTP 1.x 中,如果想并发多个请求,必须使⽤多个 TCP 链接,且浏览器为了控制资源,还会对单个域名有 6-8个的TCP链接请求限制。
HTTP2中:
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。