ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
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


 




Copyright © Lexa Software, 1996-2009.