计网5:HTTP/TCP的长连接和短连接的区别以及各自的应用场景

HTTP中长连接和短连接的区别以及各自的应用场景

HTTP的长连接就是在一条TCP连接上进行多次HTTP请求的处理,直到客户端/服务端主动断开连接。

短链接就是一次HTTP请求就建立一次TCP连接。

它们的区别就是,在资源占用发面,首先长连接会持续占用客户端和服务端的TCP资源(譬如内存、文件描述符之类的),但是它只需要TCP的三次握手和四次挥手,所以减少了创立和断开连接的开销。

短链接的话就不会持续占用资源,但是每次创立和断开连接就需要开销。

其次就是协议方面的区别,HTTP/1.1及之后是默认长连接的,HTTP/1.0的话则是默认短连接的,需要我们通过keep-alive字段去额外开启长连接。

对于它们各自的应用场景,长连接的话适用于那种高并发的场景。譬如用户在淘宝之类的购物软件,他可能频繁的切换页面,主页,商品详情页啥的,切换的不同商品。那我们构建长连接就可以提高页面加载的效率。除此之外还比较适合那种需要持续通信的场景,譬如用户和客户的沟通。

短连接的话适用于那种访问频率比较低,并发比较小的场景,譬如我们某个系统分为用户端和管理员端。或者爬虫啊,为了避免被识别到,用短连接可能会更好。

相关推荐
171320330计算机毕设编程3 分钟前
2027计算机毕设五大方向对比&选题推荐
java·ide·python·算法·django·php·推荐算法
啊阿狸不会拉杆3 分钟前
《计算机网络-自顶向下方法》1.4 分组交换网中的时延、丢包和吞吐量 读书笔记
人工智能·计算机网络
171320330计算机毕设编程3 分钟前
基于SpringBoot的在线拍卖系统
android·java·spring boot·小程序·课程设计
未秃头的程序猿8 分钟前
一次秒杀把服务打挂了,我用Sentinel规则配置化救了回来
java·后端·spring cloud
liulilittle11 分钟前
REALITY 代理隧道的有效检测方法: 被动、主动与确定性三层实证研究
linux·服务器·网络·网络协议·安全·网络安全·通信
Zane199411 分钟前
明明没删字段,反序列化却报错:都是隐式 serialVersionUID 惹的祸
java·后端
科技小登12 分钟前
企业DDoS防护方案实战测试:高防CDN、高防IP与SDK游戏盾如何配置
tcp/ip·游戏·ddos
0xBADCODE13 分钟前
动态DEX加载+反射+DES硬编码密钥:安卓三层逆向实战
android·java·python·安全·网络安全·逆向·ctf
wixzjsh15 分钟前
4.4 网络:协议、IP 地址与 UDP 通信详解
网络·tcp/ip·udp
被摘下的星星17 分钟前
Java 中 .length、.length() 以及 .size() 的区分
java·开发语言