Re: Неблокирующее удаление файлов возможно?

Dmitry Dedukhin dedukhin на mail.ru
Вт Янв 25 12:11:56 MSK 2011


Ну я про реализацию DAV в nginx толкую :)
Конечно, самый простой вариант, подсказанный Валерием - написать 
простенькое FCGI приложение, которое будет удалять файлы не блокируя 
воркер-процесс.

25.01.2011 11:55, Igor Sysoev пишет:
> On Mon, Jan 24, 2011 at 01:39:22PM +0300, Dmitry Dedukhin wrote:
>
>> Перед удалением файла мы открываем его в другом (вспомогательном)
>> процессе, затем удаляем в рабочем процессе - он остается открыт в
>> вспомогательном процессе и физически удаления в рабочем процессе не
>> происходит, т.е. блокировка минимальна.
>> Затем мы закрываем файл в вспомогательном процессе - происходит
>> физическое удаление, но блокировка вспомогательного процесса нам не
>> важна, т.к. он не обслуживает соединения.
>> Чисто теоретически, будет ли работать такая схема?
> По идее - да. А почему бы просто не закрывать файл и передавать
> его имя в другой процесс для удаления ?
>
>> 24.01.2011 12:59, Igor Sysoev пишет:
>>> On Mon, Jan 24, 2011 at 12:56:43PM +0300, Михаил Монашёв wrote:
>>>
>>>> Здравствуйте, Дмитрий.
>>>>
>>>> в nginx есть aio. Но не знаю, работает ли оно с unlink.
>>> Нет, единственное решение - вынос этой операции с специализированный
>>> трэд или процесс.
>>>
>>>> DD>   Сейчас, DAV-модуль вызывает unlink и на больших файлах воркер-процесс
>>>> DD>   блокируется на ощутимое время.
>>>> DD>   Я не в теме, поэтому спрашиваю у сообщества, есть ли вообще в природе
>>>> DD>   неблокирующее удаление файлов под *nix?
>>>>
>>>> -- 
>>>>
>>>> С уважением,
>>>> Михаил Монашёв
>>>> mailto:postmaster at softsearch.ru
>>>> ICQ# 166233339
>>>> http://michael.mindmix.ru/
>>>> Без бэкапа по жизни.
>>>>
>>>>
>>>> _______________________________________________
>>>> nginx-ru mailing list
>>>> nginx-ru at nginx.org
>>>> http://nginx.org/mailman/listinfo/nginx-ru
>>
>> _______________________________________________
>> nginx-ru mailing list
>> nginx-ru at nginx.org
>> http://nginx.org/mailman/listinfo/nginx-ru




Подробная информация о списке рассылки nginx-ru