Gzip или deflate?

В одной из предыдущих статей о клиентской оптимизации” было упомянуто, что стоит сжимать контент при отдаче его браузеру. Это минимизирует трафик и ускоряет загрузку данных у клиента.
Существуют два стандартных метода сжатия контента Web серверами - Gzip и Deflate. В чем же разница и какой из них выбрать?
Давайте разберемся в том, что же из себя представляют эти методы сжатия. Gzip - это утилита сжатия и восстановления (декомпрессии) файлов, использующая алгоритм Deflate. Deflate - это алгоритм сжатия данных “без потерь”. Т.е. Gzip это и есть алгоритм deflate (c небольшим отличием). Различие между чистым сжатием Deflate и сжатием Gzip заключается только в том, что Gzip добавляет к результирующим данным небольшой заголовок, подпись и контрольную сумму.
Как результат, прямое сжатие Defalte даст скромный выигришь в скорости. Разница эта настолько невелика, что на современном оборудовании почти не ощутима. Тем не менее, при колосальных нагрузках, даже небольшой выигришь в производительности сэкономит Вам ресурсы.
Ниже приведен график сравнения методов сжатия на различном оборудовании:

Как видно из графика, различие проявляется только на более дрвенем оборудовании.
Удобным, в данном случае, решением обладает Web сервер Lighttpd и его модуль mod_compress. Он позволяет задать набор методов компрессии (опцией compress.allowed-encodings), а во время обработки запроса выберет наиболее приоритетный (который поддерживает клиент). Помимо двух основных этот модуль поддерживает еще и сжатие BZIP2 (актуален только для текстовых браузеров).
Apache httpd предоставляет модуль mod_deflate в стандартной поставке. Этот модуль позволяет выбирать из двух типов сжатия - Gzip либо Deflate.
Для сервера Nginx есть модуль ngx_http_gzip_module, который реализует сжатие только методом Gzip.


График сделан неудачно. Что здесь сравнивается с чем? Время компрессии/декомпрессии одного алгоритма на разном оборудовании? Нет, наоборот. Почему же тогда столбики сгруппированы именно таким образом?
@wicharek
Спасибо! Справедливое замечание, но текущий график показывает прежде всего ощутимую разницу более современного оборудования и то, что на нем оба метода работают практически одинаково.
Я тоже не сразу понял как этот график читать!
Очень важно увидеть удельные величины, что бы можно было примерно оценивать выгоду на высоко нагруженных системах.