Subject: Re: [boost] 0MQ messaging in Boost
From: Pieter Hintjens (ph_at_[hidden])
Date: 2009-07-30 07:05:11
James Mansion wrote:
> This component would be much higher level than anything else in Boost,
> except perhaps quickbook and the preprocessor.
> I think it should be considered, but with some caution. What is the
> intended approach to on-the-wire etc - is it going to be rewritten as
> an amqp 1.0 system, for example?
These are good questions. 0MQ is high-level in some respects but it
is not a competitor to Qpid or OpenAMQ, it's a brokerless library that
is fully integrated into client apps. The new 0MQ API looks simply
like a socket that can pass messages between points.
The wire level protocol is very simple, it does not compare with AMQP
(which I'm well aware of, being one of the original designers). You
can check the 0MQ protocol (SPB) here: http://rfc.zeromq.org/.
One of our projects was to integrate 0MQ with AMQP, but as a very thin
and fast client stack. Thus, it would work with OpenAMQ, Qpid,
RabbitMQ and in fact provide Boost apps with a fast way to use AMQP
networks. There's an experimental branch that does this.
@Yigong Liu, regarding Channel: you're definitely looking at the same
questions as us. 0MQ perhaps has more focus on performance, it aims
at markets where latency has to be in the microseconds. There is also
the intention of implementing more complex messaging patterns, but
those tend to need brokers.
* Look at making 0MQ with Asio
* Make the 0MQ licensing work for Boost
* Make a proof of concept showing Boost working with 0MQ
Which should make things more concrete.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk