Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Embedded perl и shared memory
- To: nginx-ru@xxxxxxxxx
- Subject: Re: Embedded perl и shared memory
- From: Alexandr Gomoliako <zzz@xxxxxxxxxx>
- Date: Thu, 18 Aug 2011 21:42:13 +0300
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:content-type :content-transfer-encoding; bh=ytSljxQJKQ6m5oMkAo91CW81PjUBvcR+5vlzBvn6IKU=; b=NFQi82XWpa97bm7jHCQpCey8UBodtEQje+j3MVNtkV8Cr4NE+5VwF/uy3xvdxiU/yL vJFS/fULSDejWO250/hK10epCwWPOzdH9bu//kf2e7jl2K5duvTz7EVQ15AbXouuE2jv 3V3QggOza31e8fwjFTXQ1Ykhp+g0a+P/T+prs=
- In-reply-to: <1313690656.1727.8.camel@xxxxxxxxxxxx>
- References: <1313690656.1727.8.camel@xxxxxxxxxxxx>
On 8/18/11, Vladimir Stackov <amigo@xxxxxxxx> wrote:
> Приветствую,
> есть ли у нативного модуля perl nginx какие-либо недокументированные
> методы или хаки, позволяющие объявлять глобальные разделяемые
> переменные, к которым можно получить при обработке каждого запроса из
> любого воркера?
Нет и не может быть. Для этого нужно было бы переписать огромный кусок
самого перла. Переменные в перле имеют свойство апгрейдиться,
даунгрейдиться, подменять указатели на данные и т.д., а это требует
освобождения/выделения памяти.
> Понятно, то есть использование IPC::Shareable, например, будет вполне
> нормальным шагом в данной ситуации?
Нет, IPC::Shareable добавит вам огромный оверхед из-за использования
tie и не будет работать много где, т.к. мало кто обрабатывает magic в
xs, ну и локи еще.
Посмотрите в сторону отдельного процесса и keepalive к бэкэнду.
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru
|