357 字
1 分钟
HTTP 协议演进实验系列导读
做 Web 开发这几年,我越来越觉得 HTTP 协议的演进值得认真梳理一遍。平时写接口、调 CORS、配 HTTPS 证书,多数时候是照着文档操作,碰到问题才去查,查完又忘了。HTTP/2 多路复用到底解决了什么?HTTP/3 为什么放弃了 TCP?这些我都知道个大概,但经不住细问。
这个系列是我自己系统补课的记录。HTTP 的每个版本都不是凭空设计,而是前一个版本暴露了问题,新版本来补。0.9 太简陋。1.0 加了头部和状态码,代价是每次请求都建新连接。1.1 用 keep-alive 复用连接,但队头阻塞让人头疼。2 用多路复用解决了应用层的队头阻塞,却还是被 TCP 层的队头阻塞卡住。3 干脆换到 QUIC,从传输层重新来过。
知识准备
- 了解 TCP/IP 网络模型的基本概念(IP、TCP、UDP 各自的角色)
- 熟悉 HTTP 请求/响应的基本交互流程(方法、状态码、头部)
- 有使用浏览器开发者工具 Network 面板的经验
- 如果以上某些项不熟悉也没关系,系列文章会补充必要的背景,但不会从零讲起
支持与分享
如果这篇文章对你有帮助,欢迎支持作者或分享给更多人
HTTP 协议演进实验系列导读
https://blog.souloss.cn/posts/web/http/http-series-guide/ 部分信息可能已经过时
相关文章 智能推荐
1
HTTP/0.9:单行协议
Web 技术深入 通过动手实验深入理解 HTTP/0.9 协议:从 Tim Berners-Lee 的设计初衷到 GET 请求的最简格式,实现一个 Python TCP 服务器,用 nc/telnet 发起原始 HTTP/0.9 请求
2
HTTP/1.0:扩展协议
Web 技术深入 在 HTTP/0.9 的基础上,探索 HTTP/1.0 引入的核心新特性:请求头与响应头、状态码、多种 HTTP 方法(GET/POST/HEAD),并动手实现一个支持 HTTP/1.0 的 Python 服务器。
3
HTTP/3:QUIC 传输
Web 技术深入 深入探索 HTTP/3 的革命性变化:基于 QUIC 协议的传输层如何解决 TCP 的队头阻塞问题,0-RTT 连接建立如何实现极速响应,连接迁移如何让网络切换无缝进行,以及 HTTP/3 与 HTTP/2 的关键差异。
4
HTTP/2:多路复用
Web 技术深入 探索 HTTP/2 如何突破 HTTP/1.1 的性能瓶颈,从 SPDY 的设计理念到二进制分帧层、多路复用、头部压缩(HPACK)、服务器推送与流优先级,用实验直观理解这些改进。
5
HTTP/1.1:持久连接
Web 技术深入 在 HTTP/1.0 的基础上,深入探索 HTTP/1.1 的核心改进:持久连接、分块传输编码、请求管道化、内容协商、缓存增强,以及 Host 头的重要性。通过 Python 实验服务器亲手体验这些特性带来的性能提升。






