Заключительная часть обзора ошибок производительности из доклада Пола Кальвано.
11. Нет сжатия Gzip или Brotli
Сжатие уменьшает размер текстовых ресурсов (HTML, CSS, JS, SVG, JSON и других), что сокращает время их загрузки. Эта оптимизация отсутствует на 10% сайтов по данным HTTP Archive.
Как исправить: включить на сервере gzip, brotli или ztstandard и настроить соответствующие параметры.
12. Низкий уровень сжатия
У сжатия бывают разные уровни. На серверах nginx уровень сжатия (
gzip_comp_level) по умолчанию 1, если не указано иное. При таком уровне размер сжатого файла может быть больше исходного.Как исправить: проверить настройки сжатия и установить более высокие значения в зависимости от возможностей сервера.
13. Сторонние ресурсы не сжаты
Ресурсы сторонних поставщиков (виджеты, маркетинговые скрипты, аналитика, реклама, чат-боты) могут поставляться без сжатия.
Как исправить: связаться с поставщиком и попросить настроить сжатие или разместить ресурсы на собственных серверах/прокси с настроенным сжатием.
14. Обход оптимизации изображений
Иногда для оптимизации изображений используются специальные сервисы и CDN. В URL передаются настройки, которые применяет сервис и возвращает обработанное изображение. Неверные настройки могут привести к загрузке неоптимальных изображений.
Как исправить: проверить URL изображений и убедиться, что переданы нужные настройки.
15. Использование S3 для доставки изображений
S3 от Amazon — это популярное хранилище статических ресурсов. Оно не работает как CDN и не применяет оптимизации к изображениям.
Как исправить: перенести изображения на специализированный для этого CDN.
16. Использование gzip для сжатия изображений
Сжатие gzip подходит для текстовых файлов, так как работает на основе повторяющихся фрагментов текста. Изображения — бинарный формат, они сжимаются иначе. Текстовое сжатие не даст преимуществ в размере бинарных файлов, но потребует время на кодирование/декодирование.
Как исправить: отключить текстовое сжатие для растровых форматов изображений и бинарных файлов.
#performance