参考资料

  1. 将客户端到 ESA 边缘节点的 HTTP 请求强制重定向为 HTTPS。
  2. 开启 HSTS 后,可以减少第一次访问被劫持的风险,ESA 将响应 HSTS 头部:Strict-Transport-Security。
  3. “回源协议和端口”决定了 ESA 边缘节点向你的源站服务器发起请求时,用 HTTP 还是 HTTPS,以及连到哪个端口。
  4. Zstd 相比 Gzip 和 Brotli,在性能上的突出表现确实是“速度与压缩率的平衡”
  5. 导致 net::err_blocked_by_response 的直接原因
  6. "GET" "POST" "PUT" "DELETE" "PURGE" "HEAD" "OPTIONS" "PATCH"})
  7. “边缘缓存层 + 智能缓存层”是阿里云 ESA 多级缓存的一种双层架构
  8. HTTP/2 和 HTTP/3 是给访客用的,HTTP/2 回源是给源站用的

Zstd 相比 Gzip 和 Brotli,在性能上的突出表现确实是“速度与压缩率的平衡”

你的理解抓住了核心优势。Zstd 相比 Gzip 和 Brotli,在性能上的突出表现确实是**“速度与压缩率的平衡”**。

Zstd 的核心优势:速度与效率的平衡

根据 OpenResty Edge 引用的官方基准测试,Zstd 在低压缩级别下的表现如下:

  • 压缩速度:约 510 MB/s,远高于 Brotli 的 290 MB/s 和 Gzip 的 105 MB/s。

  • 解压速度:约 1,550 MB/s,同样大幅领先 Brotli(425 MB/s)和 Gzip(390 MB/s)。

  • 压缩率:在这个级别下(2.896),甚至略微优于 Brotli(2.883)和 Gzip(2.743)。

另一项针对算法性能的对比分析也指出,Zstd 的速度比 Brotli 快约 30%。在 Cloudflare 等平台的实践中,Zstd 也常被定位为 Gzip 的良好替代品,特别适合对压缩/解压速度要求高于极致压缩率的场景。

三者定位的差异

为了方便你根据业务场景选择,可以这样理解它们的定位:

  • Gzip:兼容性最广,速度尚可,但压缩率相对平庸。适合作为兜底的通用选项。

  • Brotli:压缩率最高(尤其是静态资源),但压缩速度慢。适合对静态、可缓存内容(如 JS、CSS、字体)进行一次性高压缩。

  • Zstd:速度极快,压缩率与 Gzip 相当或略优。适合动态内容(如 API 响应、HTML 页面)或任何需要实时快速压缩的场景。

在 ESA 上的实际配置策略

在阿里云 ESA 的压缩规则中,目前支持 Gzip、Brotli 和 Zstd 三种算法。最佳实践通常是同时开启三者,让 ESA 根据客户端 Accept-Encoding 请求头自动协商:

  1. 支持 Zstd 的现代浏览器:会自动选择 Zstd,获得最快的加载体验。

  2. 不支持 Zstd 但支持 Brotli 的浏览器:会回退到 Brotli,获得更高的压缩率。

  3. 老旧的浏览器:最终回退到 Gzip,保证兼容性。

这样配置,既能让现代客户端享受 Zstd 的高速,又能为所有用户提供尽可能好的压缩效果,无需手动为不同浏览器做区分。

作者:王壹杰
时间:2026-09-28 11:47:59
来源:https://yun.ciilii.com/