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