压缩减少从服务器发送到浏览器的数据,提高网页性能。开发人员在压缩比和速度之间做出权衡,选择动态压缩用于用户特定的响应,以及静态压缩用于如 CSS 或 JavaScript 之类的资源。IANA 认可多种编码方案,但根据 HTTP Archive 的 2025 Web Almanac,gzip、brotli 和 zstd 占据主导地位。Brotli 在 CDN 流量中领先,而 gzip 在非 CDN 情况下仍很常见。Brotli 在 2017 年广泛可用,zstd 在 2026 年达到广泛的平台支持。本文探讨浏览器如何处理跨格式拼接的压缩文件。它演示了通过基本的 Python 服务器提供未压缩的 HTML,然后展示了当 Accept-Encoding 标头存在时进行动态 gzip 压缩。该示例包含一个服务器的代码片段,该服务器根据客户端标头有条件地使用 gzip 压缩响应。本文讨论指出,虽然解压速度很重要,但压缩效率(减少发送的字节数)在浏览器环境中通常是优先考虑的。静态资源允许进行更昂贵的一次性压缩,而动态响应需要更快的压缩以避免增加延迟。本文为进一步调查 brotli 是否将在 2026 年超越非 CDN 流量中的 gzip 铺平道路。
来源: Hacker News · 由HeadlinesBriefing整理摘要