Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re[2]: nginx-0.7.44
Здравствуйте, Игорь.
>> >> > *) Добавление: предварительная поддержка кэширования в модуле
>> >> > ngx_http_proxy_module.
>> >>
>> >> Сколько байт тратится в зоне на хранение информации об одном файле?
>>
>> > 64 байта на FreeBSD/i386
>> > 128 - на FreeBSD/amd64. На других 64-битных платформах должно быть тоже
>> > 128.
>>
>> >> Чистка кэша происходит перебором всех директорий с кэшем и поиском
>> >> тех файлов, которые проэкспарились в зоне или отсутствует в ней?
>>
>> > Нет. В зоне ключи хранятся в LRU-очереди по inactive, удаляются только
>> > давно неиспользованные данные, независимо от их валидности. Раз в сутки
>> > перебираются все каталоги и из них удаляются файлы, отсутствущие в зоне.
>>
>> Выходит, что текущий алгоритм не позволяет хранить в кэше данные, к
>> которым не обращались сутки. Любой рестарт приводит в последствии к
>> удалению того, что не успело попасть в зону. Вот ребутнул я ночью
>> сервер, потом наступает 5 утра и весь кэш стирается. Конечно можно
>> помнить про это и поменять время удаления, а потом проснуться и днём
>> поменять время обратно. Но как-то неудобно...
IS> Прилагаемый патч запрещает чистку, если со времени запуска не прошло
IS> время inactive. Ставишь inactive=2d и будет храниться двое суток.
Спасибо.
>> Очень не хватает возможности хранить кэш размера не более, чем Х
>> гигов. Т.е. при старте сквидить в фоновом режиме, и как все файлы
>> всосутся в зону, начинать удалять их с хвоста, если они вылезают за
>> размеры кэша. Сквидить можно умно, например ограничив количество
>> дисковых операций в единицу времени, дабы можно было регулировать
>> нагрузку на диск.
IS> В принципе, это сделать можно. Сейчас есть специальный процесс
IS> "nginx: cleaner process", который
IS> 1) удаляет файлы по мере того, как они становятся ненужными,
IS> 2) и чистит кэш раз в сутки.
IS> Его можно озадачить подчитыванием на старте и слежением за суммарным
объёмом.
IS> И ещё нужно переменовать его в "cache manager process".
Супер! Тогда необходимость в ночной чистке вообще отпадёт.
--
С уважением,
Михаил Монашёв, SoftSearch.ru
mailto:postmaster@xxxxxxxxxxxxx
ICQ# 166233339
http://michael.mindmix.ru/
Без бэкапа по жизни.
|