APP开发公司浅析什么是长短连接?短连接是指通讯双方有数据交互时,就建立一个连接,数据发送完成后,则断开此连接,即每次连接只完成一次数据交互。短连接的操作步骤:连接→数据传输→关闭连接。
长连接是相对于通常的短连接而说的,也就是长时间保持客户端与服务器端的连接状态,且在一个连接上可以连续发送多个数据包。在连接保持期间,如果没有数据包发送,需要双方发链路检测包,以维持此连接。长连接的操作步骤:连接→数据传输→保持连接(心跳)→数据传输→保持连接(心跳)→……→关闭连接。
在HTTP1.1中默认为保持长连接(PersistentConnection,也称为持久连接),数据传输完成后保持TCP连接不断开,等待在同域名下继续用这个通道传输数据。长连接也可以使用Socket或WebSocket实现。
短连接用于并发量大,而每个用户无需频繁操作的情况,如Web网站的HTTP服务。因为长连接对于服务器端来说会耗费一定的资源,像Web网站这么频繁的有成千上万甚至上亿客户端的连接,如果用长连接,每个用户都占用一个连接的话,那将极其耗费资源;而用短连接则会省一些资源。
长连接则多用于操作频繁、点对点的通信,如PUSH和IM等功能。每个TCP连接都需要三步握手,这需要时间,如果每个操作都是短连接,再次操作的话还需重新建立连接,那么PUSH或IM功能的响应速度会降低很多,所以每个操作完成后都不断开,下次处理时直接发送数据包就OK了,不用建立TCP连接。深圳APP开发公司本文关于“APP开发公司浅析什么是长短连接?”的知识就介绍分享到这里,谢谢关注,博纳网络编辑整理。