Maxim Dounin
April 19, 2016 09:30AM
Hello!

On Tue, Apr 19, 2016 at 03:24:37AM -0400, S.A.N wrote:

> > По умолчанию range-запросы из кеша работают только в том случае,
> > если в ответе бекенда был заголовок Accept-Ranges и должна быть
> > явно указана длина ответа.
>
> Супер, спасибо, отдали Accept-Ranges все работает.
>
> Кстати есть ли смысл бекенду сжимать (gzip) свой ответ, если клиенты
> запрашивают кеш частично (Range)?
> Я так понимаю что в этом случаи Nginx каждый раз надо разжимать большой
> ответ, потом сжимать часть которые запросил клиент.

Я бы не стал.

Сжатие на лету исключает возможность использования range-запросов,
т.к. сжимается весь ответ целиком и результат сжатия может быть
разный в зависимости от временных факторов, а range-запросы должны
применяться к уже сжатому ответу. Для range-запросов могло бы
работать сжатие на уровне передачи по http ("Transfer-Encoding:
gzip"), но оно практически нигде не поддерживается.

Можно пытаться детерминировано сжимать на бекенде, и
соответственно потом из кеша nginx будет раздавать сжатый файл с
учётом range-запросов, но разжимать это nginx не сможет, либо же
пропадёт возможность использовать range-запросы для расжатого
ответа (потому что нужна явно заданная длина, см. предыдущий
ответ, а длина при расжатии заранее неизвестна).

--
Maxim Dounin
http://nginx.org/

_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

Slice cache

S.A.N April 18, 2016 04:37PM

Re: Slice cache

Maxim Dounin April 18, 2016 09:34PM

Re: Slice cache

S.A.N April 19, 2016 03:24AM

Re: Slice cache

Maxim Dounin April 19, 2016 09:30AM

Re: Slice cache

S.A.N April 19, 2016 09:39AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 164
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready