open_file_cache_errors

Монашёв Михаил postmaster at softsearch.ru
Thu Oct 4 17:16:28 MSD 2007


Здравствуйте, Игорь.

>> Можно ли для директивы open_file_cache_errors задавать время
>> кэширования отдельно от файлов, которые существуют?
>> 
>> У меня файл закачивается на хост А, потом вебдавом перемещается на хост
>> В. Пока его нет на хосте В, идут редиректы на хост А. А файлы на хосте
>> В лежат потом вечно. Поэтому хотелось бы кэшировать существующие файлы
>> на долго, а несуществующие на несколько секунд. Что-то вроде:
>> 
>> open_file_cache          max=1000  inactive=300s;
>> open_file_cache_retest   30s;
>> open_file_cache_errors   on inactive=5s;

> Нет. inactive - это параметр всего кэша. Сделано это было умышлено, чтобы
> это время хранить в виде списка, а не городить ещё одно бинарное дерево.

> Вообще для подобных location'ов лучше выключать open_file_cache_errors.

Я тут сейчас поставил (прочитав РИТ-овскую синюю книжку :-) )
# sysctl kern.maxfiles=204800
# sysctl kern.maxfilesperproc=200000

ребутнул nginx и стал смотреть количество открытых файлов. Оно выросло
до kern.openfiles: 22118 и сервер упал.

Проклятый zfs съедает кучу памяти ядра  и на открытые файлы места уже
не хватает, хотя vm.kmem_size_max: 1073741824

Я  уже  пожалел  много раз, что связался с ZFS, если честно. Больше 25
мегабит  (по  статистике  мастерхоста  на  порту)  с пяти сигейтовских
SATA-винтов  по  750Гб,  объединенных  в  raidz,  при отдаче статики я
выжать не могу. Хотя может это нормальные цифры?

-- 
С уважением,
Монашёв Михаил, SoftSearch.ru
mailto:postmaster at softsearch.ru
ICQ# 166233339
http://softsearch.ru/
Без бэкапа по жизни.






More information about the nginx-ru mailing list