HTTP协议中的短轮询、长轮询、长连接和短连接,看到一篇文章有感

时间:2023-01-16 00:01:44

关于短轮询、长轮询

短轮询主要是前端实现,JS写个死循环,不停的去请求服务器中的库存量是多少,然后刷新到这个页面当中,这其实就是所谓的短轮询。

长轮询主要取决于服务器,在长轮询中,服务器如果检测到数据没有变化的话,将会把当前请求挂起一段时间(这个时间也叫作超时时间,一般是几十秒)。

在这个时间里,服务器会去检测数据有没有变化,检测到变化就立即返回,否则就一直等到超时为止。

关于长连接和短连接

从HTTP1.1协议以后,连接默认都是长连接。其实对于长连接和短连接都是针对TCP传输协议而言,

对于HTTP协议,更准确的说法是HTTP请求和HTTP响应;

HTTP协议说到底是应用层的协议,而TCP才是真正的传输层协议,只有负责传输的这一层才需要建立连接。

长连接和短连接的区别在于:长连接是多个http请求复用一个TCP连接,短连接则一个请求一个TCP连接。

即服务器和客户端都设置Connection为keep-alive就算是长连接了。。。