http1.0,1.1,2 都有哪些区别

HTTP1.0、HTTP1.1有什么区别呢?

1.长连接:HTTP1.0需要采用keep-alive参数来告知server建立一个长连接,而HTTP1.1默认是长连接。HTTP是基于TCP的应用连接,如果每次通讯都需要连接的话,那性能消耗太大了,因此最好建立一个长连接。

2.节约带宽:HTTP1.1支持只发送header信息(不需要带任何请求体),如果server认为client可以请求数据,则返回100,否则返回401。客户端如果收到100才把请求体发送给server。这样当服务器返回401时,client就可以不用发送请求体了,节约了带宽。另外,HTTP还支持传送内容的一部分。这样当client已经有了一部分的资源后,只需要跟server请求剩余的资源了。这是断点续传的基础。

3.host域:HTTP1.1的场景下,web server如tomcat是支持多个虚拟站点可以共享同一个ip和端口的。

HTTP1.1和HTTP2.0有什么区别呢

1.多路复用:即一个连接处理并发请求多次,以前是1个请求1个线程阻塞的,多路复用会用select阻塞多个线程,然后轮询这些线程IO,如果数据一旦准备好后,线程就会真正的IO操作(此时数据已经在内核了,用户线程直接拷贝就可以)。期间如果数据没有准备好,用户线程可以干其他事情。当然HTTP1.1也可以多建立几个TCP连接,但是多个连接还是得消耗一定的资源。而且建立TCP后会有个慢启动的过程。

2.数据压缩:HTTP1.1不支持header数据区域的压缩,2.0使用HPACK算法进行压缩,传输速度更快

3.服务器推送:意思是说客户端请求server后,server会把一些相关的客户需要的数据也一并传输过去,免得客户端再次建立连接请求server。比如一些静态文件,这种方式就非常适合。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值