Or maybe I should use uwsgi.post_fork_hook() to verify the worker processes
is synced with the shared data?



Twitter:@alonisser <https://twitter.com/alonisser>
LinkedIn Profile <http://www.linkedin.com/in/alonisser>
Facebook <https://www.facebook.com/alonisser>
*Tech blog:*4p-tech.co.il/blog
*Personal Blog:*degeladom.wordpress.com
Tel:972-54-6734469


On Sat, Jul 5, 2014 at 3:00 PM, alonn <[email protected]> wrote:

> thanks Robert for your answer. A little clarification: Do you mean that
> uwsgi "workers" are in fact different processes? so I don't really have any
> shared memory space (after the master process forks)? I read somewhere that
> uwsgi utilizes "copy on write" so my refined question is are changed from
> master (such as a common variable set from outside that all processes
> should know about) or from the workers propagate between them? Or is a
> worker started with each request so I can be sure that state from master is
> maintained?
>
>
>
> ---------- Forwarded message ----------
>> From: alonn <[email protected]>
>> To: [email protected]
>> Cc:
>> Date: Sat, 5 Jul 2014 11:46:12 +0300
>> Subject: [uWSGI] Schooling me about Uwsgi workers, processes and shared
>> memory space (using uwsgi with djagno and behind nginx with unix socket)
>> After reading lots and lots of Uwsgi docs I Still don't think I
>> understand exactly what memory space is shared between uwsgi workers
>> running the web server. I have some memory based shared config (and
>> configurable from the outside) everything running Django should have access
>> to.
>> Are uswgi worker processes a **real** process? if so what memory space is
>> shared between them?
>>
>> Yes, I know I can use redis/memcache etc for inter process communication
>> but it's both ugly and slower then "in memory".
>>
>> Thanks!
>>
>>
>> Twitter:@alonisser <https://twitter.com/alonisser>
>> LinkedIn Profile <http://www.linkedin.com/in/alonisser>
>> Facebook <https://www.facebook.com/alonisser>
>> *Tech blog: *https://medium.com/@alonisser* and the hebrew one: *
>> 4p-tech.co.il/blog
>> *Personal Blog:*degeladom.wordpress.com
>> Tel:972-54-6734469
>>
>>
>> ---------- Forwarded message ----------
>> From: "Roberto De Ioris" <[email protected]>
>> To: "uWSGI developers and users list" <[email protected]>
>> Cc:
>> Date: Sat, 5 Jul 2014 11:28:36 +0200
>> Subject: Re: [uWSGI] Schooling me about Uwsgi workers, processes and
>> shared memory space (using uwsgi with djagno and behind nginx with unix
>> socket)
>>
>> > After reading lots and lots of Uwsgi docs I Still don't think I
>> understand
>> > exactly what memory space is shared between uwsgi workers running the
>> web
>> > server. I have some memory based shared config (and configurable from
>> the
>> > outside) everything running Django should have access to.
>> > Are uswgi worker processes a **real** process? if so what memory space
>> is
>> > shared between them?
>>
>> The only two ways (well at least on modern unices) to share memory
>> mappings between processes is explicitely via mmap() and the MAP_SHARED
>> flag or using the old sysv shared memory.
>>
>> uWSGI uses the first approach (mmap) for caches, queues and sharedareas
>> (as well as some additional memory structure required by the master but
>> invisible to workers). So there is no memory shared between workers unless
>> you use some of this features.
>>
>> --
>> Roberto De Ioris
>> http://unbit.it
>>
>> _______________________________________________
>> uWSGI mailing list
>> [email protected]
>> http://lists.unbit.it/cgi-bin/mailman/listinfo/uwsgi
>>
>>
>
_______________________________________________
uWSGI mailing list
[email protected]
http://lists.unbit.it/cgi-bin/mailman/listinfo/uwsgi

Reply via email to