Есть ли переломные моменты, когда сжатие содержимого ответов веб-сервера может быть неправильным выбором?
Я использую прокси-сервер API и хочу сжать (несжатое) содержимое ответа, которое я получаю от конечных точек API, чтобы быстрее отправить его клиенту, который инициировал запрос.
Однако мне интересно, есть ли какие-либо переломные моменты при выполнении сжатия на сервере, отправка сжатого содержимого ответа клиенту и выполнение распаковки содержимого на стороне клиента фактически займет больше времени, чем просто отправка несжатого ответа контент напрямую клиенту.
1 ответ
Ответ зависит от сжимаемости ваших ответов и среднего размера ответа. При небольших размерах накладные расходы на обертывание в gzip будут увеличивать длительность печати по сравнению с несжатыми и жевать ненужный процессор.
Tomcat, в качестве примера, использует 2 КБ в качестве минимального сжимаемого размера по умолчанию. Если ваш API возвращает JPG, то сжатие также будет проигрышным предложением.
Ваш подход должен состоять в том, чтобы создать гистограмму, если ваши размеры ответов и коэффициенты сжатия, и настроить фильтр сжатия, чтобы пропустить объекты, которые слишком малы, чтобы обеспечить разумное сжатие.