[rabbitmq-discuss] rabbitmq and cpp

Gordon Sim gsim at redhat.com
Tue May 20 09:28:25 BST 2014


On 05/20/2014 12:01 AM, Full Name wrote:
> why there are clients for RabbitMQ and Apache qpid and so forth, and not a generic C++ client for AMQP 1.0?

As Matthias pointed out in his earlier response, different APIs often 
reflect different stylistic choices. However a given AMQP 1.0 client 
should work against any broker supporting that protocol version.

So for example the Qpid project has a qpid::messaging c++ client and a 
Qpid Proton Messenger client (in c but easily usable from c++), offering 
two different styles of API. However both support AMQP 1.0 and therefore 
work against RabbitMQ (with the AMQP 1.0 plugin enabled) or indeed any 
other 1.0 compliant server.

There are however older versions of the AMQP protocol still in use 
(there was a fair bit of 'churn' in the evolution, to put it mildly) and 
some clients will be tied to one of these and would not work against a 
broker that didn't support the same version.

What would be nice, though it may be hard to achieve, would be an API 
for which multiple implementations existed, e.g. for different 
protocols. Java has JMS, but there isn't really anything equivalent in 
other programming languages.


More information about the rabbitmq-discuss mailing list