什么是长连接和短连接?(长链接、短链接)什么时候使用长连接、短链接?

什么是长连接和短连接?

在HTTP/1.0中默认使用短连接。也就是说,客户端和服务器每进行一次HTTP操作,就建立一次连接,任务结束就中断连接。当客户端浏览器访问的某个HTML或其他类型的Web页中包含有其他的Web资源(如JavaScript文件、图像文件、CSS文件等),每遇到这样一个Web资源,浏览器就会重新建立一个HTTP会话。

而从HTTP/1.1起,默认使用长连接,用以保持连接特性。使用长连接的HTTP协议,会在响应头加入这行代码:

Connection:keep-alive

在使用长连接的情况下,当一个网页打开完成后,客户端和服务器之间用于传输HTTP数据的TCP连接不会关闭,客户端再次访问这个服务器时,会继续使用这一条已经建立的连接。Keep-Alive不会永久保持连接,它有一个保持时间,可以在不同的服务器软件(如Apache)中设定这个时间。实现长连接需要客户端和服务端都支持长连接。

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

参考文章:HTTP长连接、短连接究竟是什么?

什么时候使用长连接、短链接?

定义

短连接:例如普通的web请求,在三次握手之后建立连接,发送数据包并得到服务器返回的结果之后,通过客户端和服务端的四次握手进行关闭断开。

长连接:区别于短连接,由于三次握手链接及四次握手断开,在请求频繁的情况下,链接请求和断开请求的开销较大,影响效率。采用长连接方式,执行三次握手链接后,不断开链接,保持客户端和服务端通信,直到服务器超时自动断开链接,或者客户端主动断开链接。

适用场景

短连接:适用于网页浏览等数据刷新频度较低的场景。

长连接:适用于客户端和服务端通信频繁的场景,例如聊天室,实时游戏等。

参考文章:关于长连接和短连接的理解及使用场景

TCP(传输控制协议)和UDP(用户数据报协议)是网络传输层常用的两种协议,它们在功能和特点上有一些区别,同时也适用于不同的应用场景。 1. 连接性:TCP是面向连接的协议,通过三次握手建立连接,确保数据可靠性和顺序性。UDP是无连接的协议,每个数据包都是独立的,不保证可靠性和顺序性。 2. 可靠性:TCP提供可靠的数据传输,通过重传机制、确认应答和错误校验等机制来保证数据的完整性和可靠性。UDP不提供可靠性保证,数据包可能丢失、重复或乱序。 3. 速度:UDP具有较低的延迟和较高的传输速度,因为它没有TCP的连接建立和断开过程以及复杂的流量控制和拥塞控制机制。TCP的可靠性机制会增加一定的延迟和开销。 4. 应用场景:TCP适用于对数据完整性要求较高的应用场景,如文件传输、网页浏览、电子邮件等。UDP适用于实时性要求较高、对数据完整性要求较低的应用场景,如音视频传输、实时游戏、DNS解析等。 关于长连接连接,TCP协议通常被用于长连接,而UDP协议通常用于连接长连接指建立一次连接后,客户端和服务器保持持续的通信,可以进行多次请求和响应。连接指每次请求和响应都需要重新建立连接,完成后即断开连接。由于TCP提供了连接的可靠性和稳定性,适合时间的数据传输和持续的通信,因此通常使用TCP实现长连接。而UDP更适合于时间内快速传输的场景,如实时通信、查询响应等。 总结来说,TCP是面向连接的、可靠的传输协议,适用于对数据完整性要求较高的场景,常用于长连接;UDP是无连接的、不可靠的传输协议,适用于实时性要求较高、对数据完整性要求较低的场景,常用于连接
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值