ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: принудительная очистка кеша



Hello!

On Sun, May 29, 2011 at 07:02:45PM +0400, Dmitry Morozovsky wrote:

> On Sun, 29 May 2011, Dmitry Morozovsky wrote:
> 
> DM> О, Дадо ;)
> DM> 
> DM> On Sun, 29 May 2011, Evgenii Davidov wrote:
> DM> 
> DM> ED> > > хочу включить кеширование на одном сайте
> DM> ED> > > но там при обновлении страниц бывает нужно срочно выдать новую,
> DM> ED> > > будет ли корректно стирать в этот момент (скриптом который 
> создает новую страницу) кеш
> DM> ED> > > например через find /cache/ -type f -delete
> DM> ED> > > спасибо
> DM> ED> > 
> DM> ED> > Лучше  делать  ему  mv, а потом стирать. 
> DM> ED> 
> DM> ED> спасибо, сделал диск в памяти для этого -- стирает весьма быстро
> DM> 
> DM> Всё равно надо б сначала переименовывать, чтобы исключить race, и выдачу 
> DM> клиенту половины контента.
> 
> Если хочется зачистить всё, то примерно так:
> 
> mkdir -p /cache/.new
> apply -d 'mkdir -p /cache/.new/%1' `cd /cache && find . -type d`
> mkdir /cache/.old
> mv /cache/* /cache/.old
> mv /cache/.new/* /cache/
> rm -rf /cache/.old
> 
> Между двумя mv тут всё равно малый рейс есть, но он на выдачу клиенту не 
> повлияет.

"Я не спрашиваю, какую траву вы курите.  Скажите только, где вы её 
берёте." (c)

Вариант "find /cache/ -type f -delete" - годный, с точностью до 
возможного некорректного представления nginx'а о размере кеша.

Откуда ты откопал race в unlink(2) - я не понял.  При отдаче 
одного ответа там никакого race'а нет, а если пытаться таким 
образом исключить race при отдаче нескольких ресурсов (e.g.  
страница + картинки) - то проще сразу повесится, ибо атомарности 
тут быть не может всилу удалённости клиента.

Maxim Dounin

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


 




Copyright © Lexa Software, 1996-2009.