<div dir="ltr">My team went through this decision a few months ago. We decided to go with SimpleAmqpClient for a few reasons:<div><div><ul><li>Its author (Alan) is very involved in the community and very responsive to questions.</li>
<li>Its author is intimately familiar w/ rabbitmq-c, so likely knows best how to leverage its capabilities</li><li>It seems to be better documented and more frequently maintained than the alternatives</li></ul><div>Several months in, we're still happy with the choice we have made. Of course we have our list of features we'd love to see implemented, but everything it does so far, it does well! (Thanks, Alan!)</div>
<div><br></div><div>-Chris</div></div></div><div><br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Aug 7, 2013 at 2:10 PM, Alan Antonuk <span dir="ltr"><<a href="mailto:alan.antonuk@gmail.com" target="_blank">alan.antonuk@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>As Petr mentioned: all of the C++ libraries listed wrap rabbitmq-c. The major difference I see between the the different libraries mentioned is how well they handle asynchronous events. rabbitmq-c doesn't provide a lot of support API wise for dealing with async events like basic.deliver, or a channel.close as a result of a basic.publish failure.</div>
<div><br></div><div>SimpleAmqpClient tries to make some of the async bits more synchronous at the expense of performance. As far as I can tell the others listed don't do much in the way of error handling at a protocol level. </div>
<div><br></div><div>My (biased) opinion is to use SimpleAmqpClient. That said, you should evaluate the API and the performance of the library and see if it fits your needs.</div><div><br></div><div>Full disclosure: I'm the maintainer behind both SimpleAmqpClient and rabbitmq-c</div>
<span class="HOEnZb"><font color="#888888">
<div><br></div><div>-Alan</div></font></span></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Aug 7, 2013 at 9:16 AM, Gotthard, Petr <span dir="ltr"><<a href="mailto:Petr.Gotthard@honeywell.com" target="_blank">Petr.Gotthard@honeywell.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">All the C++ clients listed are wrappers around <a href="https://github.com/alanxz/rabbitmq-c" target="_blank">https://github.com/alanxz/rabbitmq-c</a>.<br>
<br>
I may be too old fashioned, but-- did you consider using the C client without any wrappers?<br>
<span><font color="#888888"><br>
<br>
Petr<br>
</font></span><div><div><br>
-----Original Message-----<br>
From: <a href="mailto:rabbitmq-discuss-bounces@lists.rabbitmq.com" target="_blank">rabbitmq-discuss-bounces@lists.rabbitmq.com</a> [mailto:<a href="mailto:rabbitmq-discuss-bounces@lists.rabbitmq.com" target="_blank">rabbitmq-discuss-bounces@lists.rabbitmq.com</a>] On Behalf Of Daniel Pocock<br>
Sent: 7. srpna 2013 15:46<br>
To: <a href="mailto:rabbitmq-discuss@lists.rabbitmq.com" target="_blank">rabbitmq-discuss@lists.rabbitmq.com</a><br>
Subject: [rabbitmq-discuss] C++ client options<br>
<br>
<br>
Hi,<br>
<br>
There are various C++ clients listed on the RabbitMQ web site:<br>
<br>
<a href="https://github.com/alanxz/SimpleAmqpClient" target="_blank">https://github.com/alanxz/SimpleAmqpClient</a><br>
- depends on boost<br>
- MIT license<br>
<br>
<a href="https://github.com/akalend/amqpcpp" target="_blank">https://github.com/akalend/amqpcpp</a><br>
<a href="http://code.google.com/p/rabbitcpp/" target="_blank">http://code.google.com/p/rabbitcpp/</a><br>
- no boost dependency<br>
- MIT license (no license info in the github site though, it only mentions the license on Google Code)<br>
<br>
Can anybody comment on which of these projects (or others) to go with?<br>
<br>
If we select one of these, I will probably make an official package for it in Debian+Ubuntu<br>
<br>
Regards,<br>
<br>
Daniel<br>
<br>
<br>
_______________________________________________<br>
rabbitmq-discuss mailing list<br>
<a href="mailto:rabbitmq-discuss@lists.rabbitmq.com" target="_blank">rabbitmq-discuss@lists.rabbitmq.com</a><br>
<a href="https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss" target="_blank">https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss</a><br>
_______________________________________________<br>
rabbitmq-discuss mailing list<br>
<a href="mailto:rabbitmq-discuss@lists.rabbitmq.com" target="_blank">rabbitmq-discuss@lists.rabbitmq.com</a><br>
<a href="https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss" target="_blank">https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss</a><br>
</div></div></blockquote></div><br></div>
</div></div><br>_______________________________________________<br>
rabbitmq-discuss mailing list<br>
<a href="mailto:rabbitmq-discuss@lists.rabbitmq.com">rabbitmq-discuss@lists.rabbitmq.com</a><br>
<a href="https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss" target="_blank">https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss</a><br>
<br></blockquote></div><br></div>