长连接、短连接、长轮询、短轮询

长短连接是针对TCP的。讨论Http长短连接也是针对TCP。传输层才需建立连接。
长连接就是建立连接后会多次传输数据或连接时长达到设定值后才断开。
短连接是建立连接后传输一次数据就断开连接。
Http1.0开始支持长连接,Connection的值默认keep-alive,打开一个网页时,可以复用连接,请求多个Html、CSS、JS等文件。

长轮询就是建立连接去查询数据,服务端返回有效数据或者连接时长达到设定值后断开,在此之前一直维持连接。
短轮询是建立连接去查询数据,立刻返回当前数据,断开连接,没有预期数据也不会等待。
比如,监控自己的商品库存变化:长轮询就是库存变化后返回新的库存,断开连接,不变化就一直维持连接到超时;短轮询就是查到库存就返回,即使库存没有变化。
比如,RocketMQ、MetaQ等消息队列,用长轮询的方式查询消息。
长轮询长时间占用连接,但比起频繁短轮询,可以减少网络IO。

你可能感兴趣的:(技术,连接,轮询)