小牧xm

V1

2023/05/15阅读:19主题:默认主题

HTTP中keep-alive持久连接

大家好,我是小牧,一个只会 CV 的工程师,持续记录自学前端知识; 今天我们学习 Http 协议之持久连接

HTTP/1.0 不支持

在这个版本中,每进行一次 HTTP 通信就会断开一次 TCP 连接; 在传输的文件容量很小的情况下,是没问题的,但随着 web 的发展,图片越来越多,如果每次发送一个请求就断开一次,增加了通信的开销,带来了不好的体验

HTTP/1.1 支持

特点:只要任意一端没有明确提出断开,则会一直保持 TCP 连接

持久连接带来到的好处

持久连接的出现使我们可以同时发送并行请求,不需要等待下一个响应完成后再去请求,减少了响应时间

如何断开连接

如果客户端与服务器端一直连接,有可能造成资源的浪费,怎样才能做到断开连接呢?

现在使用的 http 协议基本上是 1.1 版本,会默认开启持续连接,所以当服务器端想明确断开连接的时候,会发送首部字段 Connection

Connection:Colse

如果想在旧版本使用也是用持久连接,则需要客户端和服务器端都需要指定

Connection:Keep-Alive

断开可以指定首段字段 Keep-Alive

Keep-Alive:max=5,timeout=10
  • timeout:在响应最后一个请求后,在规定时间内不再发生请求断开
  • max:是客户端可以向服务器最多可以发送的请求数,或者服务器端能够接受请求数。一旦请求和响应的总数超过 max,服务器可以关闭连接。

分类:

前端

标签:

前端

作者介绍

小牧xm
V1