Re: nginx 1.11 + fast-cgi cache + map + ssi

2018-02-28 Пенетрантность gz
Укажите флаг volatile, чтобы значения не кэшировались после первого
вычисления в рамках основного запроса.

map $request_uri $fastcgi_cache_key {
volatile;

default
$request_method|$host|$uri|$request_uri|$cookie_currency|$cookie_show_mode;
~^/objekti/.+
$request_method|$host|$uri|$request_uri|$cookie_currency|$http_x_requested_with;
~^/xml/yml.php $request_method|$host|$uri|$arg_type|$arg_nosim;
}

Posted at Nginx Forum: 
https://forum.nginx.org/read.php?21,267467,278848#msg-278848

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Вопросы по http2 push

2018-02-28 Пенетрантность Nick Lavlinsky - Method Lab

28.02.2018 12:59, S.A.N пишет:
Если ресурс отданный push ответом, используется на странице и в ответе 
были

заголовки НТТР кеширование, браузер этот ресурс перемещает в НТТР кеш?


Да.

Когда я экспериментировал с push ответами, браузеры не перемещал push
ресурсы в НТТР кеш, вы тестировали только в новом Chrome, как обстоят дела в
других браузерах?
Сейчас потестил в Сhrome 66, FF 58.0.2 всё работает правильно, кеширует 
ресурсы, которые были запушены и использованы.



Posted at Nginx Forum: 
https://forum.nginx.org/read.php?21,278784,278824#msg-278824

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru



--

С уважением,
Лавлинский Николай,
Метод Лаб: делаем правильно!
www.methodlab.ru
+7 (499) 519-00-12

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Вопросы по http2 push

2018-02-28 Пенетрантность S.A.N
> Push cache очищается при закрытии 
> соединения, но все элементы при первом использовании браузером будут 
> помещены в http cache, так что всё нормально.
> Подробнее здесь: 
> https://jakearchibald.com/2017/h2-push-tougher-than-i-thought/

Если ресурс отданный push ответом, используется на странице и в ответе были
заголовки НТТР кеширование, браузер этот ресурс перемещает в НТТР кеш?
Когда я экспериментировал с push ответами, браузеры не перемещал push
ресурсы в НТТР кеш, вы тестировали только в новом Chrome, как обстоят дела в
других браузерах?

Posted at Nginx Forum: 
https://forum.nginx.org/read.php?21,278784,278824#msg-278824

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Вопросы по http2 push

2018-02-28 Пенетрантность Nick Lavlinsky - Method Lab

28.02.2018 11:40, S.A.N пишет:

Не совсем понял ваши слова про "не кешируемый контент".

По спецификации НТТР 2, браузер push ответы могут кешировать только в
отдельном кеше соединенния (смотрите на connection_id в devtools), после
закрытия соединения кеш очищается.
Или я не прав, браузеры сохранят push ответы в общем кеше и потом можно их
использовать в разных connection и ревалидировать?


Нет, есть разные кеши: push cache и http cache. Наоборот, при push по 
спецификации рекомендуется использовать кешируемые ответы (все заголовки 
при push приходят как обычно). Push cache очищается при закрытии 
соединения, но все элементы при первом использовании браузером будут 
помещены в http cache, так что всё нормально.
Подробнее здесь: 
https://jakearchibald.com/2017/h2-push-tougher-than-i-thought/



А use case простой: замена inline CSS, который блокирует отрисовку
страницы. А также любые ресурсы из критического пути рендеринга
страницы.

Для этих целей лучше использовать отдельные запросы, с заголовками НТТР
кешированием на год и инвалидировать этот кеш только по изменению юрл.

Push делает то же самое, только без ожидания запроса (экономия до 1RTT).

Posted at Nginx Forum: 
https://forum.nginx.org/read.php?21,278784,278821#msg-278821

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru



--

С уважением,
Лавлинский Николай,
Метод Лаб: делаем правильно!
www.methodlab.ru
+7 (499) 519-00-12

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Вопросы по http2 push

2018-02-28 Пенетрантность S.A.N
> Не совсем понял ваши слова про "не кешируемый контент".

По спецификации НТТР 2, браузер push ответы могут кешировать только в
отдельном кеше соединенния (смотрите на connection_id в devtools), после
закрытия соединения кеш очищается.
Или я не прав, браузеры сохранят push ответы в общем кеше и потом можно их
использовать в разных connection и ревалидировать?
 
> А use case простой: замена inline CSS, который блокирует отрисовку 
> страницы. А также любые ресурсы из критического пути рендеринга
> страницы.

Для этих целей лучше использовать отдельные запросы, с заголовками НТТР
кешированием на год и инвалидировать этот кеш только по изменению юрл.

Posted at Nginx Forum: 
https://forum.nginx.org/read.php?21,278784,278821#msg-278821

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru