<div dir="ltr"><div class="gmail_extra"><a href="https://mailman.nginx.org/mailman/listinfo/nginx-ru">https://mailman.nginx.org/mailman/listinfo/nginx-ru</a><br clear="all"><div><div class="gmail_signature" data-smartmail="gmail_signature"><font size="1"><span style="color:rgb(102,102,102)">---<br></span><b><span style="color:rgb(102,102,102)">B. R.</span></b><span style="color:rgb(102,102,102)"></span></font></div></div>
<br><div class="gmail_quote">2017-05-10 19:18 GMT+02:00 Roman Arutyunyan <span dir="ltr"><<a href="mailto:arut@nginx.com" target="_blank">arut@nginx.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Добрый день,<br>
<span class=""><br>
On Wed, May 10, 2017 at 12:04:39PM -0400, metalfm1 wrote:<br>
> ПриветÑтвую!<br>
><br>
> Директива fastcgi_cache_background_<wbr>update Ñтранно ведёт ÑÐµÐ±Ñ Ð¿Ñ€Ð¸ ssi<br>
> подзапроÑах.<br>
> ЕÑть ÑÐµÑ€Ð²Ð¸Ñ Ñо Ñложной Ð±Ð¸Ð·Ð½ÐµÑ Ð»Ð¾Ð³Ð¸ÐºÐ¾Ð¹, Ð³Ð»Ð°Ð²Ð½Ð°Ñ Ñтраница загружаетÑÑ 1 Ñек,<br>
> Ñтек nginx + php-fpm. Ð’ ходе оптимизации ÑкороÑти загрузки было решено<br>
> вынеÑти генерацию Ñамого долгого куÑка Ñтраницы в отдельный ssi Ð¿Ð¾Ð´Ð·Ð°Ð¿Ñ€Ð¾Ñ Ð¸<br>
> кешировать его на 1 чаÑ. Кешированием управлÑет fastcgi Ñервер на php Ñ<br>
> помощью заголовка Cache-Control.<br>
><br>
> С кеширование проблем нет, nginx уÑпешно кеширует подзапроÑÑ‹ /ssi_dev/ и<br>
> Ñкладывает их на диÑк. Проблемы начинаютÑÑ ÐºÐ¾Ð³Ð´Ð° кеш протухает.<br>
><br>
> Текущее поведение nginx<br>
> - еÑли еÑть Ñлемент в кеше, то он уÑпешно отдаетÑÑ(HIT)<br>
> - еÑли еÑть Ñлемент в кеше, но он уÑтарел, то клиенту отдаётÑÑ ÑƒÑтаревшаÑ<br>
> верÑиÑ(STALE) и делаетÑÑ Ð¿Ð¾Ð´Ð·Ð°Ð¿Ñ€Ð¾Ñ Ð½Ð° прогрев кеша(EXPIRED)<br>
><br>
> Проблема заключаетÑÑ Ð² том, что Ð¿Ð¾Ð´Ð·Ð°Ð¿Ñ€Ð¾Ñ Ð½Ð° прогрев кеша выполнÑетÑÑ Ð²<br>
> блокирующем режиме. То еÑть оÑновной Ð·Ð°Ð¿Ñ€Ð¾Ñ Ð¶Ð´Ñ‘Ñ‚ Ð²Ñ‹Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð´Ð·Ð°Ð¿Ñ€Ð¾Ñа.<br>
> Ð£ÐºÐ°Ð·Ð°Ð½Ð½Ð°Ñ Ð²Ñ‹ÑˆÐµ проблема не наблюдаетÑÑ, еÑли в кеш клаÑть вÑÑŽ Ñтраницу,<br>
> поведение nginx ÑоответÑтвует документации. Клиенту отдаётÑÑ ÑÑ‚Ð°Ñ€Ð°Ñ Ð²ÐµÑ€ÑиÑ<br>
> контента и делаетÑÑ Ð½ÐµÐ±Ð»Ð¾ÐºÐ¸Ñ€ÑƒÑŽÑ‰Ð¸Ð¹ Ð¿Ð¾Ð´Ð·Ð°Ð¿Ñ€Ð¾Ñ Ð½Ð° обновление.<br>
<br>
</span>Ðа текущий момент background update реализован так, что он блокирует оÑновной<br>
запроÑ, еÑли запущен в подзапроÑе. Ðто как раз ваш Ñлучай.<br>
Ð’ таÑк <a href="https://trac.nginx.org/nginx/ticket/1249" rel="noreferrer" target="_blank">https://trac.nginx.org/nginx/<wbr>ticket/1249</a> Ñ Ð°Ñ‚Ñ‚Ð°Ñ‡Ð¸Ð» патч, который должен<br>
Ñто вылечить.<br>
<br>
[..]<br>
<span class="HOEnZb"><font color="#888888"><br>
--<br>
Roman Arutyunyan<br>
</font></span><div class="HOEnZb"><div class="h5">______________________________<wbr>_________________<br>
nginx mailing list<br>
<a href="mailto:nginx@nginx.org">nginx@nginx.org</a><br>
<a href="http://mailman.nginx.org/mailman/listinfo/nginx" rel="noreferrer" target="_blank">http://mailman.nginx.org/<wbr>mailman/listinfo/nginx</a></div></div></blockquote></div><br></div></div>