长连接和短连接

news/2025/11/14 17:56:09/文章来源:https://www.cnblogs.com/hellodeyang/p/19222939

目录
  • 长连接和短连接
    • 概念
      • 总结与类比
    • TCP和UDP
    • HTTP的长短连接
      • HTTP 连接行为的演进
        • 1️⃣ 阶段一:HTTP/1.0 —— “用完即断”(Designed to Disconnect)
        • 2️⃣ 阶段二:HTTP/1.1 —— 引入 Keep-Alive(延迟断开)
    • 长连接/短连接协议对比一览表

长连接和短连接

概念

长连接这个概念的核心和本质是在传输层实现的,但它完全是为了应用层的需求而设计和服务的。

总结与类比

一个很好的类比是电话通话

  • TCP三次握手:就像你打电话给对方,对方接起来说“喂?”,你确认“是我,能听到吗?”,对方说“可以听到”。—— 连接建立
  • 短连接:你说一句“今天天气真好”,对方回一句“是的”。然后你们都说“再见”并挂断电话。下次有事,再重新拨号。——
  • 长连接:电话接通后,你们就一个话题聊了好几分钟,期间你来我往多次对话,但电话一直通着,没有挂断。直到你们觉得暂时没话说了,或者要休息了,才挂断。——
  • 应用层协议:就是你们在电话里沟通时使用的语言和规则(比如用中文聊业务,还是用英文聊技术)。你们选择一直通着电话(长连接),是为了让沟通(应用层的数据交换)更高效。

长连接是一个横跨传输层和应用层的概念。

  • 它的实现机制传输层(TCP连接的保持)。
  • 它的存在价值使用场景完全由应用层决定和应用层协议定义。

TCP和UDP

  • TCP是面向连接的,实现它的应用层协议可以是长连接也可以是短连接。
    • 长连接(如WebSocket、数据库连接池)或短连接(如默认的HTTP/1.0)
  • UDP是面向无连接的,没有长连接、短连接一说。
特性 TCP(短连接) UDP(无连接) TCP(长连接)
通信模式 连接 -> 收发数据 -> 断开连接 无连接,直接收发数据 连接 -> 多次收发数据 -> 断开连接
开销 每次都有握手和挥手的开销 几乎没有额外开销 一次握手和挥手,分摊到多次通信
状态 需要维护连接状态 无状态,每个数据报独立 需要长期维护连接状态
数据边界 字节流,无边界 保留数据边界 字节流,无边界

HTTP的长短连接

http设计初衷就是连一下断开,后面页面内容丰富,觉得立即断开不好,所以新加了超时才断开的设计。

http不长连接是服务器或者客户端主动断开了连接?

是的,HTTP 本身支持长连接(特别是 HTTP/1.1),所谓的“不长连接”,绝大多数情况下是【服务器(future.channel().close())】或【客户端(HTTP/1.0)】主动关闭了连接,而不是协议本身不能保持。

HTTP/1.0 为什么要断开连接?

  • “无状态 + 请求-响应”模型,适合资源获取
  • 保持连接消耗服务器资源,对大多数 Web 场景不划算
  • 及时释放连接可防资源泄漏、DDoS 攻击等

在大多数场景下,“断开”比“保持”更经济、更安全、更简单。

为什么HTTP/2/3可以转向长连接?

因为它们的应用场景和技术基础发生了变化:

  • 页面复杂度:现代网页包含数百个资源,高频次的请求使得长连接的优势压倒了其资源成本。
  • 技术成熟:服务器资源更充裕,连接管理技术更成熟。
  • 新需求:出现了服务端推送、实时通信等需要“持续对话”的新需求。

演进与平衡:从“必须断”到“按需不断”

  • HTTP/1.1的Keep-Alive:为了解决连续请求同一服务器时的性能开销(三次握手),引入了默认的持久连接。但它依然是请求驱动的——在完成一组请求后,连接仍然会在一段空闲时间后关闭。
  • HTTP/2的革命:引入了真正的多路复用长连接。一个TCP连接可以并行处理多个请求/响应流。这时,维持一个高质量的长期连接变得非常有价值,因为它避免了队头阻塞,大幅提升了性能。
  • HTTP/3的再进化:基于QUIC协议,进一步优化了连接建立和迁移,使得长连接在移动和复杂网络环境下更加稳健。

HTTP的演进史,就是随着场景和技术的变化,不断重新校准这个平衡点的过程。从1.0的“一刀切断开”,到1.1的“按需保持”,再到2/3的“精心维护长连接”,都体现了这种务实的设计哲学。

HTTP 连接行为的演进

1️⃣ 阶段一:HTTP/1.0 —— “用完即断”(Designed to Disconnect)
  • 出现时间:1996 年
  • 使用场景:静态文本、简单 HTML 页面
  • 特点:
    • 每个请求都建立一个新的 TCP 连接
    • 响应完成后立即关闭连接
    • 不支持持久连接(除非手动加 Connection: keep-alive 扩展)

📌 问题暴露:
一个页面有 HTML + 5 张图 + 2 个 JS → 要建 8 次 TCP 连接 → 每次都要三次握手 + 四次挥手 → 延迟高、资源浪费!

2️⃣ 阶段二:HTTP/1.1 —— 引入 Keep-Alive(延迟断开)
  • 出现时间:1999 年(RFC 2616)
  • 改进核心:默认开启持久连接
  • 新规则:
    • 同一个 TCP 连接上可以发送多个请求/响应
    • 连接不会立即断开,而是进入“空闲状态”
    • 等待一段时间(如 30s~75s)无新请求后,才由服务端主动关闭

🔧 关键头部:

# 含义:最多处理 100 个请求,空闲超过 30 秒就关。
Connection: keep-alive
Keep-Alive: timeout=30, max=100

长连接/短连接协议对比一览表

特性维度 HTTP/1.0 HTTP/1.1 HTTP/2 WebSocket TCP + 自定义协议
默认连接模型 短连接 持久连接 多路复用的持久连接 全双工长连接 完全自定义
连接生命周期 请求-响应-关闭 多个请求-响应-空闲超时关闭 多个请求/响应流-空闲超时关闭 握手-持续通信-显式关闭 完全由应用逻辑控制
数据流向 单向 (客户端发起) 单向 (客户端发起) 双向 (客户端发起,服务端可推送) 全双工 (双方可随时主动发送) 完全自定义 (通常为全双工)
协议开销 高 (每次TCP握手) 中 (复用连接,但文本头部冗余) 低 (二进制帧,头部压缩) 低 (握手后仅有2-14字节帧头) 极低 (完全自定义,无冗余)
服务器推送 不支持 不支持 支持 (提前推送资源) 天然支持 (双向通信) 可实现
多路复用 不支持 不支持 (管道化有队头阻塞) 支持 (解决队头阻塞) 不适用 (消息本身就是独立的) 可实现
设计复杂度 中 (帧、流等概念) 中 (帧协议、心跳保活) (需自己设计所有规则)
主要优势 实现简单,无状态 减少TCP握手开销,兼容性好 高性能,头部压缩,服务器推送 真正的实时双向通信,低延迟 极致性能,完全灵活,私有特性
主要劣势 性能极差,资源浪费 队头阻塞,文本头部冗余 实现相对复杂,TCP层队头阻塞 非请求-响应模型,与HTTP生态不同 开发成本高,需要处理所有底层细节

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/965590.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

助力V2G,米尔SECC GreenPHY实战开发

随着电动汽车与电网双向交互(V2G)技术的快速发展,充电桩与车辆间的高效通信成为实现智能能源管理的关键。SECC作为充电桩的通信控制核心,其与电力线载波通信芯片的适配尤为重要。本文将分享基于米尔核心板,调试联…

洛谷题单指南-组合数学与计数-P1287 盒子与球

原题链接:https://www.luogu.com.cn/problem/P1287 题意解读:n个不同的球放入r个不同盒子的方案数 解题思路: 1、第二类斯特林数 用于解决n个不同的球放入r个相同盒子的方案数,不同盒子乘上r!即可。 可以用递推实现…

2025 年最新推荐铝板厂家排行榜,涵盖 5052/6061/7075 铝板及纯铝板/高纯铝板优质供应商精选

引言 铝板作为工业制造、建筑装饰、交通运输等领域的核心材料,其轻量化、耐腐蚀、易加工的特性备受青睐,但当前市场厂家资质参差不齐,采购痛点日益凸显。部分小型厂家采用劣质铝锭生产,导致产品纯度不足、强度不达…

Netty和Tomcat

Netty和Tomcat特性 Netty Tomcat定位 网络编程框架 Servlet容器 / Web服务器核心模型 异步事件驱动 基于Servlet规范的请求-响应协议支持 灵活。可构建HTTP、WebSocket及任何自定义协议。 固定。主要面向HTTP/1.x, HTT…

2025 年最新推荐铝管厂家权威排行榜:无缝铝管/合金铝管/6061/2A12 铝管优质企业综合测评推荐

在工业制造、建筑装饰、交通运输等核心领域,铝管凭借轻质、耐腐蚀、导热性佳的核心优势,成为全球制造业不可或缺的基础材料。然而当前市场品牌繁杂,产品质量参差不齐,采购者常面临选型难、品控无保障、交付周期长等…

【计算机、信息技术、电子、人工智能等均可投】第二届图像、信号处理与通信技术国际学术会议(ISPCT 2025)

征稿范围广→计算机、信息技术、电子、人工智能、光学等均可投 第二届图像、信号处理与通信技术国际学术会议(ISPCT 2025) 2025 2nd International Conference on Image, Signal Processing and Communication Techn…

2025 年微矩形 /圆形/矩形电连接器厂家最新推荐排行榜,涵盖 MDC/ZMDM/Y50X 等系列优质品牌精选

引言 在工业制造、通信技术、军工信息化等领域高速发展的当下,电连接器作为信号传输的核心部件,其品质稳定性、技术适配性直接影响终端设备的运行效率与安全性能。当前连接器市场品牌繁杂,部分厂商存在原材料劣质、…

2025 年 11 月铝合金门窗厂家推荐排行榜,断桥门窗,系统门窗,金属门窗,阳台门窗,平开推拉折叠门窗公司精选

2025 年 11 月铝合金门窗厂家推荐排行榜:断桥门窗、系统门窗、金属门窗、阳台门窗、平开推拉折叠门窗公司精选 行业背景与发展趋势 随着建筑节能标准的不断提升和消费者对居住环境品质要求的日益增长,铝合金门窗行业…

2025 年 11 月电动调节阀厂家推荐排行榜,西门子/霍尼韦尔/鲁泽节能,比例阀/蒸汽温控阀/二通阀/阀执行器公司精选

2025年11月电动调节阀厂家推荐排行榜,西门子/霍尼韦尔/鲁泽节能,比例阀/蒸汽温控阀/二通阀/阀执行器公司精选 行业背景与发展趋势 随着工业自动化和智能楼宇建设的快速发展,电动调节阀作为过程控制系统的关键执行元…

P9902 『PG2』模拟最大流 题解

Sol 模拟最大流的一般套路就是求最小割。 题目保证了 \(u<v\),所以我们可以得到如下暴力: 设 \(f_{i,S}\) 表示前 \(i\) 个点,从 \(1\) 能到集合 \(S\) 中的点,割掉的最小边权。那么转移有: \[f_{i,S} \to f_{…

2025 年 11 月蒸汽调节阀厂家推荐排行榜,上海鲁泽/西门子/霍尼韦尔蒸汽调节阀,西门子蒸汽比例调节阀,蒸汽温控阀公司推荐

2025 年蒸汽调节阀行业深度分析与厂家推荐指南 随着工业自动化水平的不断提升,蒸汽调节阀作为流程工业与暖通系统中的关键控制设备,其技术性能与可靠性直接影响着整个系统的运行效率与能耗水平。蒸汽调节阀、蒸汽比例…

2025年自动钢筋弯曲生产厂家权威推荐榜单:钢筋自动弯曲/数控式钢筋弯曲中心/钢筋自动弯曲中心源头厂家精选

在建筑业工业化与智能化浪潮的推动下,自动钢筋弯曲设备正以其高效率、高精度和低人工成本的优势,逐步替代传统加工作业模式。 据QYResearch调研统计,2031年全球钢筋弯曲机市场销售额预计将达到38.5亿元,2025年至20…

C++ 进阶知识点详细教程 - 第3部分

C++ 进阶知识点详细教程 - 第3部分 11. 搜索算法 11.1 深度优先搜索(DFS) 11.1.1 基本概念 DFS是一种递归的搜索算法,沿着一条路径深入到底,然后回溯。 基本模板 void dfs(int state) {// 1. 终止条件if (满足条件…

SQL 中 SELECT 查询语句知识点

SQL 中 SELECT 查询语句知识点介绍SELECT的基础使用SELECT 的完整语法 SELECT 列 FROM 表 WHERE 过滤条件 GROUP BY 分组列 聚合函数 HAVING 分组过滤条件 ORDER BY ASC|DESC SELECT 的执行顺序先执行 FROM 确定…

2025 年 11 月毛刷辊厂家推荐排行榜,工业毛刷辊,定做毛刷辊,清洁毛刷辊,纺织毛刷辊,钢制毛刷辊公司精选

2025年11月毛刷辊厂家推荐排行榜:工业毛刷辊、定做毛刷辊、清洁毛刷辊、纺织毛刷辊、钢制毛刷辊公司精选 行业背景与发展现状 毛刷辊作为工业生产中不可或缺的关键部件,在表面处理、清洁除尘、纺织整理、材料输送等领…

弧焊工业机械手混合气体实用方法

这场变革的核心在于提升生产效率的同时,如何更好地减少资源浪费并提高焊接品质。在这一背景下,WGFACS弧焊气体节约系统的引入,无疑为行业带来了一项革命性的突破。该系统通过智能化的实时监控和动态控制,确保了焊接…

2025 年 11 月合肥搬家公司推荐排行榜,合肥正规搬家公司,合肥市搬家公司,包河区搬家公司,蜀山区搬家公司,专业高效与贴心服务口碑之选

2025 年 11 月合肥搬家公司推荐排行榜,合肥正规搬家公司,合肥市搬家公司,包河区搬家公司,蜀山区搬家公司,专业高效与贴心服务口碑之选 随着合肥城市化进程的加速推进,人口流动性和企事业单位搬迁需求持续增长,搬…

消息队列原理和对比

主流消息队列对比 消息队列是一种重要的分布式系统组件,可用于异步通信、削峰填谷、解耦系统、数据缓存等多个方面。在选择消息队列时,需要考虑诸多因素,包括性能、可靠性、可用性、扩展性、可维护性、社区支持等等…

Ancora GaN 基础知识

Ancora GaN 基础知识2025-11-14 17:29 斑鸠,一生。 阅读(0) 评论(0) 收藏 举报 需要特别注意与MosFET 不同的是,GaN 虽然没有反向二极管,但是能反向导通,而且导通压降与Vgs(off)和Id 值有关。

2025年自动挤出机订做厂家权威推荐榜单:挤出造粒机/实验室挤出机/双螺杆挤出机源头厂家精选

在塑料、橡胶及新材料产业持续升级的背景下,自动挤出机作为核心加工装备,其定制化能力与技术水平直接影响着下游产品的质量与生产效率。 据行业报告预测,全球双螺杆挤出机市场在2025-2030年间将以约4.5%的复合年增长…