Best Practices for Speeding Up Your Web Site / Рекомендации лучших вебоводов для ускорения вашего сайта: Gzip Components / Сжимайте компоненты
| Английский оригинал | Перевод на русский | |
|---|---|---|
Сожалеем, но текст оригинала доступен только зарегистрированным пользователям. |
Время, уходящее на передачу HTTP запроса и ответа по сети может быть существенно уменьшено с помощью разработчиков интерфейса. Не секрет, что канал передачи данных пользователя, его провайдера, удаленность от промежуточной точки обмена и прочее совершенно не во власти команды разработчиков. Но есть и другие параметры, которые влияют на скорость ответа. Компрессия уменьшает время отклика за счет уменьшения размера HTTP ответа. Alexasa 23.08.12 в 09:13 |
|
|
Начиная с версии HTTP/1.1 веб-клиенты сообщают о поддержке компрессии с помощью параметра Accept-Encoding заголовка HTTP запроса. Alexasa 26.08.12 в 10:36 |
||
|
<b>Accept-Encoding: gzip, deflate</b> Alexasa 26.08.12 в 10:36 |
||
|
Когда веб-сервер видит такую запись в заголовке, он может упаковать ответ с помощью одного из методов, перечисленных в запросе клиента. Веб-сервер сообщает об этом веб-клиенту с помощью параметра Content-Encoding в заголовке ответа. Alexasa 27.08.12 в 09:57 |
||
|
<b>Content-Encoding: gzip</b> Alexasa 27.08.12 в 09:58 |
||
|
Gzip наиболее популярный и эффективный метод компрессии на данный момент. Он был разработан в составе проекта GNU и описан в стандарте RFC 1952. Еще один формат, с которым вы возможно встретитесь, это deflate, но он менее эффективен и менее популярен. Alexasa 27.08.12 в 10:00 |
||
|
Гзиппинг уменьшает размер ответа приблизительно на 70%. Ориентировочно 90% нынешнего интернет-траффика проходит через браузеры, поддерживающие gzip. Если вы используете Apache, то модуль конфигурации gzip зависит от версии: Apache 1.3 использует mod_gzip, а Apache 2.x использует mod_deflate. Alexasa 27.08.12 в 10:05 |
||
|
Известен ряд проблем с браузерами и прокси, которые могут привести к несоответствию между тем, что ожидает браузер и тем, что он получит в результате компрессии. К счастью эти проблемы сокращаются с уменьшением использования устаревших браузеров. Модули Апача помогают в этом, автоматически добавляя в заголовок соответствующий параметр Vary. Alexasa 27.08.12 в 13:56 |
||
|
Серверы сами выбирают, что им сжимать, основываясь на типе файла, однако выбор у них небольшой. Большинство веб-сайтов сжимают свои HTML документы. Также стоит упаковывать ваши скрипты и стили, но многие веб-сайты упускают такую возможность. Фактически, полезно упаковывать любые текстовые ответы, включая XML и JSON. Картинки и PDF файлы сжимать не нужно, так как они уже упакованы. Попытки сжать их не только будет впустую расходовать процессорное время, но также могут увеличить размер самих файлов. Alexasa 27.08.12 в 13:57 |
||
|
Сжатие как можно большего количества файлов является простым путем для уменьшения веса странички и ускорения ответа пользователям. Alexasa 27.08.12 в 14:06 |
