ngx_http_conf_get_module_main_conf questions
Maxim Dounin
mdounin at mdounin.ru
Mon Jun 3 09:45:39 UTC 2013
Hello!
On Sun, Jun 02, 2013 at 06:46:54PM -0400, vagner wrote:
> Максим, спасибо за ответ
> Вот код:
> https://github.com/svagner/ngx_filestats_module/blob/master/ngx_http_filestats_module.c
И где проблема?
> Я понял, где сделал изначальную глупость - я попытался реализовать каунтеры
> в пространстве конфига модуля. Для этого подойдет скорее шаред пул, как это
> и было сделано у ustats модуля.
Счётчики в конфиге - должны работать при условии одного рабочего
процесса. Счётчики в разделяемой памяти - дают возможность
считать что-либо в рамках нескольких рабочих процессов.
> Как вы думаете, мне лучше создать шаред пулы
> для всех листов (ngx_http_filestats_time2size_t.timeouts &&
> ngx_http_filestats_loc_conf_t.size2time), а потом связать их общей
> структурой через указатели?
> У меня пока плохо вырисовывается в голове каким образом используя
> ngx_shared_memory_add можно связать все листы и при этом получать доступ к
> этой памяти из контекста других модулей:(
Имеет смысл сделать одну зону разделяемой памяти на модуль, и
дальше уже выделять память из неё по потребности.
Но вообще я бы рекомендовал для начала не связываться с
разделяемой памятью, и в первую очередь добиться, чтобы всё
работало без неё.
--
Maxim Dounin
http://nginx.org/en/donation.html
Подробная информация о списке рассылки nginx-ru