[uWSGI] Incompatibility between PyZMQ and uWSGI

Roberto De Ioris roberto at unbit.it
Wed Nov 24 10:33:08 CET 2010

Il giorno 24/nov/2010, alle ore 10.21, Jaime Fernández ha scritto:

> Hi Roberto,
> Thanks for the reply. I've tested with -T flag but it does not work either.
> In the ZMQ I've received the following reply (http://lists.zeromq.org/pipermail/zeromq-dev/2010-November/008086.html) which may be helpful:
> ---
> I think the issue is that uWSGI likely uses an asynchronous event loop underneath with non-blocking sockets.  When zeromq/pyzmq is used in that context, zeromq socket have to be integrated into the event loop at a very low level using:
> 1) zmq_poll (for zeromq 2.0.x and 2.1.x)
> 2) ZMQ_FD/ZMQ_EVENTS (for zeromq 2.1.x)
> The exact point of conflict is that both zeromq and uWSGI are using something like poll to handle IO in the event loop.  The two event loops don't know how to coordinate their activities and end up stepping on each other's toes.  The only libraries that I know of that handle this (in python that is) are:
> 1) pyzmq.eventloop.ioloop (a tornado-compatible event loop).
> 2) eventlet
> ---
> Unfortunately I don't know how to proceed.
> Than

I have studied a bit zeromq.

If i have understand correctly it is a wrapper for sockets, but i do not understand how you are using it.

Can you post a sample code i can test ? All the example available on the zeromq works without problems,
so i suspect you  are using some functionality i do not get.

Roberto De Ioris

More information about the uWSGI mailing list