EMZETT.
Увійти

Brotli і Zstandard

Коротко: Brotli і Zstandard (zstd) — сучасні методи стиснення, що перевершують gzip за ступенем стиснення чи швидкістю. Brotli поширений у вебі, zstd — на серверах і в файлах.

Докладніше: Обидва спираються на LZ77 і ентропійне кодування, але використовують більші вікна, кращі моделі та попередні знання.

Подробиці

  • Brotli: Розроблений Google. Містить вбудований словник частих вебтермінів (HTML, CSS, JS). Для статичних файлів на високому рівні (до 11) на 15–25 % менший за gzip. Високі рівні повільно стискають, розпакування швидке. Браузери надсилають Accept-Encoding: br.
  • Zstandard: Від Facebook (Ян Колле). Дуже швидкі рівні та безліч налаштувань, користувацькі словники для малих даних, багатоядерне стиснення. Популярний у пакетах Linux, файлових системах (Btrfs, ZFS), базах даних і резервних копіях.
  • Вибір у вебі: Статику заздалегідь стискати Brotli 11, динамічні відповіді — радше рівень 4–5 або gzip.
  • Безпека: Стиснені відповіді з секретними значеннями були ціллю атак на кшталт BREACH. Див. LZ77 і Deflate.
  • Zstd у браузерах: Дедалі частіше підтримується (zstd як content-encoding).

Див. також: HTTP/2