nginx internals question

Konstantin Sorokin kvs at sigterm.ru
Thu Aug 25 12:27:46 MSD 2005


On Thu, Aug 25, 2005 at 12:14:00PM +0400, Igor Sysoev wrote:
> On Thu, 25 Aug 2005, Konstantin Sorokin wrote:
> 
> >On Mon, Aug 22, 2005 at 04:28:38PM +0400, Igor Sysoev wrote:
> >>On Mon, 22 Aug 2005, Konstantin Sorokin wrote:
> >>
> >>>Игорь, а разумно ли будет использовать nginx'овую hash таблицу
> >>>(core/ngx_hash.c) для организации хэшей в сотни тысяч элементов ?
> >>>Судя по коду, сейчас она используется на небольшом количестве
> >>>пар "ключ"  <---> "значение".
> >>
> >>Нет, текущая реализация подходит только для небольшого числа (сотни или
> >>около
> >>того) предопределённых элементов. Я планирую ещё сделать "ключ" ->"массив
> >>значений". Кроме того, в nginx есть ещё пара хешей (extention -> mime 
> >>type и
> >>имя сервера -> конфигурация), которые пока ещё не переехали на
> >>core/ngx_hash.c.
> >>
> >
> >Еще вопрос. Если мне надо завести некую сущность, но таким образом,
> >чтобы она была своя для каждой копии worker'а, как это наиболее
> >кошерно сделать ? Если использовать хук 'init process', то куда надо
> >помещать указатель, на эту сущность и как с ней потом работать в
> >фильтрах ?
> 
> Сущность используется в нескольких фильтрах или только в том, где
> она создавалась ? Если второе - то просто статический указатель в модуле.
> Если первое, то нужно более подробное описание.
> 
>

Вот в этом и проблема, что пока не совсем ясно будет ли нужно использование
из других модулей. Грубо говоря сущность -- это некая хэш таблица, которая
будет динамически worker'ами пополняться в процессе работы. Возможно дальше
захочется иметь к ней доступ и из других модулей.

-- 
Konstantin Sorokin





More information about the nginx-ru mailing list