服务公告

服务公告 > 行业资讯 > HTTP/3 与 QUIC 的部署进展

HTTP/3 与 QUIC 的部署进展

发布时间:2025-12-08 18:28
打开新版 Nginx 的配置文件,写下一行 listen 443 quic; 站点就能跑上 HTTP/3——支持已经进入主流发行版的稳定版本,部署不再是尝鲜。 背景与握手优势 HTTP/3 不再基于 TCP,改用 QUIC(Quick UDP Internet Connections,架构在 UDP 之上的快速连接协议)。传统 HTTP/2 建立连接要 TCP 握手加 TLS 握手多次往返,每一次往返都是一个来回的物理延迟,跨洋访问时尤其明显;QUIC 把传输层与加密握手合并,首次连接一次往返完成,重连可以零往返。移动网络里,这个差距直接体现在每次打开页面的等待时间上。 弱网与移动场景的表现 TCP 一条连接里任何丢包,所有数据都要排队等重传,术语叫队头阻塞;QUIC 的多个流相互独立,一条流丢包不拖累其他流,页面里并行的图片、脚本、接口请求各自走各自的流。手机从 Wi-Fi 切到蜂窝网络时,TCP 连接断掉重来,正在上传的表单、播放中的视频都会中断;QUIC 用连接 ID 标识会话,网络切换后连接无缝继续,用户端完全无感。通勤路上刷页面不断线、视频通话不卡断,背后就是这套机制。 部署门槛:三个常见坑 其一,UDP 443 端口要在防火墙和安全组放行,只放 TCP 是最高频的翻车点,浏览器请求会静默回落到 HTTP/2,很多人还以为 HTTP/3 已经生效了;其二,Nginx 需要 1.25 以上版本并编译 HTTP/3 模块,配置里 listen 443 quic reuseport; 与原有的 listen 443 ssl; 并存,再加一行 add_header Alt-Svc 'h3=":443";' 告诉浏览器可以升级;其三,部分企业网络对 UDP 流量限速,QUIC 体验可能反而打折,回落 TCP 的机制必须保留,两者共存是长期形态。 双栈与灰度 推荐 HTTP/2 与 HTTP/3 同时开启,浏览器自动协商,出问题随时可以只关一侧。上线后观察日志里 QUIC 请求的占比与耗时对比,用数据决定后续投入。 协议升级的价值在高丢包、高移动性场景最明显,办公室宽带用户感知有限,按用户画像和业务地域分布排投入的优先级即可。