[zeromq-dev] HTTP -> 0MQ XREQ proxy example.

Pieter Hintjens ph at imatix.com
Sun Mar 20 20:39:57 CET 2011


On Sun, Mar 20, 2011 at 5:43 PM, Marko Mikulicic
<marko.mikulicic at isti.cnr.it> wrote:

> Sorry, I mean direct interoperability, as if the unmodified HTTP clients
> were able to connect to http/0mq endpoints. For example imagine a SUB
> endpoint listening on a http socket;
> a http client like a browser or wget or whatever then connects and POSTs a
> file which then can be interpreted by the SUB socket as a valid pubsub
> message.

This is what we're discussing, yes.

> On the other hand, a simple HTTP transport encapsulation working as a tunnel
> of the 0mq protocol, would not allow this scenario; both the client and the
> server have talk the underlying 0mq protocol...

Nope, this isn't how it works. By definition the client talks HTTP to
the server, unless you want to do something weird like a protocol
upgrade, but no-one has proposed that. The idea is to map the 0MQ API
to accurate HTTP from client to server, and then back to accurate 0MQ
from server to 0MQ network.

In fact if you read the RestTL spec I referred to, you'll see one way
of doing this. The client manipulates 'pipes' and 'feeds' in the web
server, emulating SUB/PUB, REQ/REP, PUSH/PULL sockets. It then exposes
this emulation to the web application as an 0MQ API. On the other
side, the server implements pipes and feeds as 0MQ sockets.

There are other ways, this is just one possible model.

-Pieter



More information about the zeromq-dev mailing list