Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Управление cache m anager просессом по расписанию
On Mon, Jun 08, 2009 at 10:55:49AM +0400, Анатолий Шарифулин wrote:
> Игорь, может сделать такую опцию, которая бы не чистила кеш сразу (т.е. не
> удаляла физически файл), а заменяла его. То есть: кеш после истечения
> времени жизни не удаляется, если приходит запрос, то клиенту отдается то,
> что в кеше (хоть и данные устарели), а nginx делает запрос на бек и
> обновляет кеш. Тем самым не будет всплесков из-за того, что нужно обновить
> кеш. Типа lazy-кеш :)
nginx удаляет ответ не когда он устарел, а когда он стал невостребованным
(inactive). Что касается всплесков, то сегодня в 0.8.1 будет
proxy_cache_use_stale ... updating ...;
fastcgi_cache_use_stale ... updating ...;
> Что скажете?
>
> 2009/6/1 Igor Sysoev <is@xxxxxxxxxxxxx>
>
> > On Mon, Jun 01, 2009 at 01:12:00PM +0300, Taras Murashko wrote:
> >
> > > На продакшен сервере(Ubuntu 7.10) использую nginx 0.7.50 для кеширования
> > > изображений в различных разрешениях.
> > > Кеш достаточно большой около 10 гб.
> > >
> > > fastcgi_cache_path /opt/nginx-cache levels=2:2 keys_zone=img:50m;
> > >
> > > location /img/ {
> > > fastcgi_pass $backend;
> > > include fcgi_params;
> > > fastcgi_intercept_errors off;
> > > fastcgi_cache_key $server_addr$request_uri;
> > > fastcgi_cache img;
> > > fastcgi_cache_valid 304 1m;
> > > fastcgi_cache_valid any 100d;
> > > fastcgi_hide_header Set-Cookie;
> > > }
> > >
> > >
> > > В последнее время заменил, что с регулярностью раз в три дня, на сервере
> > > резко повышается io-wait (100% из 400%) на пару часов.
> > >
> > > У меня есть предположение, что в этот момент nginx начинает очищать кеш.
> > >
> > > Есть ли возможность указать, чтобы nginx только в определенное время (по
> > > расписанию) проводил очистку кеша?
> >
> > nginx чистит кэш по мере того, как появляются новостребованные данные.
> > Это регулируется параметром inactive директивы proxy_cache_path.
> >
> > Нужно смотреть, в каком состоянии находится кэш-менеджер в это время:
> > если D, то он работает с диском.
> >
> >
> > --
> > Игорь Сысоев
> > http://sysoev.ru
> >
> >
> >
>
>
> --
> С уважением,
> Анатолий Шарифулин.
--
Игорь Сысоев
http://sysoev.ru
|