Текстовые ответы (HTML, CSS, JS, SVG, JSON) обычно хорошо сжимаются; изображения и архивы уже сжаты — повторное gzip лишь тратит CPU.
Brotli часто даёт лучший коэффициент, чем gzip, но может быть дороже по CPU на краю — типичный компромисс: статика предсжатая на билде, динамика через nginx/CDN с разумным уровнем.
- [Accept-Encoding — MDN](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-Encoding) — Согласование алгоритма с клиентом.
- [Content-Encoding — MDN](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Encoding) — Как помечать сжатый ответ.
---
## Кэш и Vary
Если отдаёте разные тела в зависимости от Accept-Encoding, корректно выставляйте Vary: Accept-Encoding, иначе промежуточный кэш может отдать несовместимый формат.
Проверяйте TTFB после включения сжатия на слабом железе — иногда узкое место смещается в CPU.
