периодическое перезаполнение структур модуля по данным из конфига

Yury Zavarin yury.zavarin на gmail.com
Пт Апр 2 21:23:14 MSD 2010


Здравствуйте.

Пишу сейчас модуль к nginx'у. Этот модуль берет из конфига имя файла, из
которого он берет какие-то данные и держит их в памяти.
Есть необходимость периодически (раз в минуту или раз в пять минут,
например) перечитывать этот файл и использовать новые данные (если они
поменялись).
Само имя файла не меняется.

Как правильно это делать?
Правильно ли я понимаю, что можно, например, делать так, чтобы поменялась
inode'а у конфига и делать nginx reload и при этом все будет хорошо
работать?
Или лучше использовать какой-то другой вариант? (Вариант проверять при
каждом запросе, что подошло время перечитать файл, кажется мне плохим.)

И еще один вопрос.
В данном случае получается, что каждый воркер будет держать в памяти то, что
он прочитал из файла.
Пока что это не представляет проблемы, данных не так уж много.
Но если все же проблема возникнет, то в какую сторону смотреть? В сторону
ngx_shared_memory_add и т. д.?
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://nginx.org/pipermail/nginx-ru/attachments/20100402/0f3582d9/attachment.html>


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