Http的长连接和短连接

在HTTP/1.0中,默认使用的是短连接。也就是说,浏览器和服务器每进行一次HTTP操作,就建立一次连接,但任务结束就中断连接。

但从 HTTP/1.1起,默认使用长连接,用以保持连接特性。

HTTP协议的长连接和短连接,实质上是TCP协议的长连接和短连接。

1.TCP的短连接:

client向server发起连接请求,server接到请求,然后双方建立连接。client向server 发送消息,server回应client,然后一次读写就完成了,这时候双方任何一个都可以发起close操作。

短连接的优点是:管理起来比较简单,存在的连接都是有用的连接,不需要额外的控制手段

2.TCP的长连接

client向server发起连接,server接受client连接,双方建立连接。Client与server完成一次读写之后,它们之间的连接并不会主动关闭,后续的读写操作会继续使用这个连接。

3.短连接和长连接连接过程

短连接:建立连接——数据传输——关闭连接 ... 建立连接——数据传输——关闭连接

长连接:建立连接——数据传输 ...(保持连接)...数据传输——关闭连接

4.对比

长连接可以省去较多的TCP建立和关闭的操作,减少浪费,节约时间。对于频繁请求资源的客户来说,较适用长连接。

短连接对于服务器来说管理较为简单,存在的连接都是有用的连接,不需要额外的控制手段。但如果客户请求频繁,将在TCP的建立和关闭操作上浪费时间和带宽。

5.HTTP请求报文(请求行、请求头、请求体)

原文地址:https://www.cnblogs.com/jingpeng77/p/13629383.html