长连接和短连接
HTTP的长连接和短连接本质是TCP协议的长连接和短连接,HTTP是应用层协议,TCP是传输层协议
什么是长连接、短连接
HTTP/1.0 默认使用的是短连接,创建连接——传输数据——断开连接,每次请求都会创建一次连接。
HTTP/1. 1 默认使用的是长连接,在请求头中会包含 Connection:keep-alive,通知服务器,当client发请求收到响应后,连接不会立刻断开,如果此时client仍对该主机发起请求,会复用该连接,减少创建连接的消耗。创建连接——多次传输数据——断开连接
长连接不会永远存活,它有个存活时间,可以在服务器端设置。
TCP连接过程
三次握手
四次挥手
长连接、短连接的优缺点
由上可以看出,长连接省去多次通讯时,连接建立和关闭的资源,节省时间,使用于交易比较频繁的场景,但有个问题,长连接下,一般client不会主动关闭连接,这会造成服务器的存活连接越来越多,直至崩溃,所以可以在服务器增加控制,一段时间内如果没有io读写,则可以主动断开连接
短连接则相对于服务器来说管理较为简单,但当连接发起过多时,性能压力较大
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!