http2.0和http1.1的区别

本文参考:小林coding3.1 HTTP 常见面试题 | 小林coding

ChatGPT,仅用于自用复习

HTTP/2.0和HTTP1.1有什么区别

1、传输格式变化,采⽤了新的⼆进制格式

HTTP1.X 的解析都是基于⽂本,⽂本的表现形式多样,不利于健壮性考虑

HTTP2.0 采⽤⼆进制,只认0/1组合,实现更加快的⽅法,健壮性更加完善

2、多路复⽤

HTTP/1.1: 单个 TCP 连接中只能处理一个请求,必须等待上一个请求完成后才能发送下一个(队头阻塞问题)。为提高效率,通常通过建立多个 TCP 连接并行发送请求。

HTTP/2.0: 支持多路复用,在一个 TCP 连接中可以同时发送多个请求和响应,互不干扰,解决队头阻塞问题,提高了传输效率。

3、header压缩

HTTP/1.1: 请求和响应头部通常会携带大量重复数据(如 Cookie),在每次请求中都会重复传输,浪费带宽。

HTTP/2.0: 引入了 HPACK 压缩算法,将头部数据压缩后再传输,同时在客户端和服务器之间维护一个动态表以存储重复的头部字段,大幅减少了头部大小。

  1. 服务端推送

HTTP/1.1: 客户端必须显式请求资源,服务器才能响应。

HTTP/2.0: 允许服务器主动向客户端推送资源(如 CSS、JS 文件),减少了客户端等待资源加载的时间,优化页面加载速度。

把客户端所需要的资源伴随着index.html⼀起发送到客户端,省去了客户端重复请求的步骤

因为没有发起请求,建⽴连接等操作,所以静态资源通过服务器推送,可以极⼤的提升速度

5. 兼容性

HTTP/2.0: 兼容 HTTP/1.1 的语义(如请求方法、状态码等),因此可以平滑升级,应用程序无需大幅修改即可支持 HTTP/2.0。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值