当前位置: 首页 > news >正文

HTTP Keep-Alive 笔记

一、 核心含义

Keep-Alive就是HTTP长连接,让TCP连接复用,一次连好多次传数据,不用每次请求都重新握手断开。
对应HTTP1.0需手动加Connection:Keep-Alive开启,HTTP1.1默认开启(默认Connection:keep-alive)

二、 通俗理解

❌无Keep-Alive(短连接):像打电话,说一句挂一次,下次再说再拨号,又握手又断,麻烦还慢
✅有Keep-Alive(长连接):拨通一次不挂,一口气说完所有事,高效省资源

三、 工作原理

  1. 客户端发请求,头带Connection:keep-alive,告知服务端“别断连接”

  2. 服务端同意,响应头也返回Connection:keep-alive,同时带超时/最大请求数(如Keep-Alive: timeout=10, max=100)

  3. 本次请求响应完成,TCP连接不断开,后续同域名请求直接复用这个连接

  4. 超时无新请求/达到最大请求数,连接才断开

四、 核心优势(为啥要用)

✅ 减少TCP三次握手/四次挥手次数,降低服务器开销
✅ 减少延迟,后续请求不用等建立连接,响应更快
✅ 节省带宽,少传连接建立断开的额外报文

五、 注意事项&坑点

  1. HTTP1.1默认开,HTTP1.0默认关,需手动加请求头才生效

  2. 不是一直保持:服务端会设超时(timeout)和最大请求数(max),防止闲置占资源

  3. 长连接≠永久连接,超时/达到上限就断开,是“复用连接”不是“永不失联”

  4. 劣势:闲置时占服务器连接数,高并发下可能拖慢服务,需合理配置超时和最大数

  5. 关闭方式:请求头加Connection:close,强制用短连接

六、 关键补充(考点/实操用)

✅ 搭配管道化(Pipeline)更高效:一个长连接里,客户端可连续发多个请求,不用等前一个响应
✅ 抓包能看到:响应头有Keep-Alive字段,且多次请求的TCP端口一致,就是复用了
✅ 适用场景:网页多资源(图片/CSS/JS),一次打开需加载多个文件,用长连接超合适
✅ 不适用场景:单次请求、大文件下载(易占连接)、高并发短请求场景

http://www.zskr.cn/news/183224.html

相关文章:

  • 斯坦福大学发现:AI系统分工模式的信息论奥秘
  • PyTorch模型微调实战:基于Miniconda-Python3.10环境复现SOTA结果
  • 生成sitemap.xml帮助搜索引擎理解网站结构
  • 游戏开发中常用的Python库
  • 输入URL并回车会发生什么
  • PyTorch官方推荐环境管理工具:Miniconda-Python3.10实战解析
  • P6825 「EZEC-4」求和
  • Pygame库的安装和配置步骤
  • 培训兼职作者统一风格输出保证品牌一致性
  • 从零到一:Google 《Advent of Agents 2025》完全学习指南
  • 提交PR到开源项目README增加反向链接
  • 支持按小时计费灵活适应短期项目需求
  • 无需Anaconda下载大包!轻量Miniconda-Python3.10镜像满足所有AI需求
  • 【计算机毕业设计案例】基于SpringBoot+Vue的电子招投标系统基于SpringBoot+vue招投标系统的设计与实现(程序+文档+讲解+定制)
  • 使用Google Search Console监控关键词排名变化
  • GitHub开源项目最佳实践:附带Miniconda-Python3.10环境说明
  • 避免关键词堆砌,注重语义自然表达
  • fiddler改网页title
  • 采用HTTPS协议保障安全并获得搜索引擎偏好
  • 配置robots.txt确保关键页面被正常抓取
  • 一键启动PyTorch GPU环境:Miniconda-Python3.10镜像使用详解
  • 构建内容矩阵:覆盖‘anaconda’, ‘pytorch’, ‘cuda’三大主题
  • 集成账单系统让用户清楚了解Token消耗情况
  • 2025最新云南社会稳定风险评估报告品牌top5榜单公布,服务覆盖昆明/曲靖/文山/保山/昭通等地优质公司专业评测及选择指南,助力项目顺利推进 - 全局中转站
  • 刘洋洋《清风踏云行》上线,演绎侠义风骨唱响赤子心
  • C++ 函数
  • 鸿鹄CAD-让CAD制图改图更流畅高效
  • JMeter 实战:JSON 提取器结果双引号转义处理
  • 使用高相关关键词提升Miniconda技术文章搜索权重
  • PyTorch安装教程:使用Miniconda避免依赖地狱