<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
In addition to what was already said ...<br>
<br>
... what was important for us is the rather freely reconfigurability
of Exchanges to Queues. Even though we don't have to do that too
often, it's still a very powerful feature of AMQP. <br>
<br>
Ok, I haven't looked into ActiveMQ for several years. So I might be
outdated :-(<br>
<br>
Cheers<br>
Maze<br>
<br>
<br>
<br>
<div class="moz-cite-prefix">On 2013-06-18 14:20 , Chris wrote:<br>
</div>
<blockquote
cite="mid:CAHEpgBB8x+Rqh070VvrP1ARtUqM_T1C_Hu60BieHJwfFzmzRLg@mail.gmail.com"
type="cite">
<div dir="ltr">
<div style="">A couple of other things to consider:</div>
<div style=""><br>
</div>
<div style="">1) Message durability: In my own informal tests
(about 8 months ago), I found that ActiveMQ took a very
significant hit once you turned on message persistence.
RabbitMQ also took a hit, but it was much less significant.</div>
<div><br>
</div>
<div style="">2) Clustering / High Availability: If you need to
cluster the brokers for HA or failover, there are significant
differences here. Last I checked, ActiveMQ only supported
active/passive configurations and they were fairly difficult
to configure, or required separate shared storage nodes.
RabbitMQ supports active/active configurations, is easy to
configure, and requires no other external dependencies. That
said, I did find that ActiveMQ clients have better support for
automatic failover than most RabbitMQ clients (so you have to
implement it yourself in RabbitMQ clients or find an add-on
library for it).</div>
<div style=""><br>
</div>
<div style="">Disclaimer: I did my research on ActiveMQ 5.7, so
you may want to check if ActiveMQ 5.8 addresses some of these
problems...</div>
<div style=""><br>
</div>
<div style="">-Chris</div>
<div><br>
</div>
<div style="">
-Chris</div>
</div>
<div class="gmail_extra"><br>
<br>
<div class="gmail_quote">On Tue, Jun 18, 2013 at 5:45 AM, Simon
MacMullen <span dir="ltr"><<a moz-do-not-send="true"
href="mailto:simon@rabbitmq.com" target="_blank">simon@rabbitmq.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">If your
primary concern is latency, testing with a maxed-out message
rate (which it seems is what you are doing) will give very
dubious results. Maxing out the message rate means that all
internal buffers are full, and thus messages take a while to
get through the broker.<br>
<br>
The same is presumably true for ActiveMQ, but presumably it
has smaller buffers.<br>
<br>
This is even more true if your tests are able to publish
messages faster than they consume (which I guess is what's
happening in your last row) - if your test ends up
enqueueing messages and then taking a while to dequeue them
then I am not surprised you see high latency.<br>
<br>
Dropping your message rate to even 90% of the maximum will
give huge latency gains - see the final chart here:<br>
<br>
<a moz-do-not-send="true"
href="http://www.rabbitmq.com/blog/2012/04/17/rabbitmq-performance-measurements-part-1/"
target="_blank">http://www.rabbitmq.com/blog/2012/04/17/rabbitmq-performance-measurements-part-1/</a><br>
<br>
Finally, I would be wary of constructing a synthetic
benchmark and then using it to pick which product you go
with, unless you determine that one product has acceptable
performance and others do not. Factors such as reliability,
ease of use, feature set and so on tend to be more important
than a 10% difference in performance.<br>
<br>
Hopefully I would still be saying that even if RabbitMQ were
"winning" your tests :-)<br>
<br>
Cheers, Simon
<div>
<div class="h5"><br>
<br>
On 18/06/13 04:00, JC wrote:<br>
</div>
</div>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div>
<div class="h5">
Hi,<br>
<br>
We are in the process of evaluating middleware and
choosing which<br>
middleware we pick for a potentially large scale
distributed<br>
application. We did an evaluation between activemq
and rabbitmq with<br>
different test cases. So far activemq has outperformed
rabbitmq using<br>
the default out-of-box configuration especially on the
latency side.<br>
We use activemq openWire protocol vs. rabbit AMQP,
Here is one example<br>
result of the test we did on 1 publisher/1 consumer
and we measure the<br>
latency from send to receive time. Similar results
we get from<br>
multiple consumers as well. Any one has done the
similar benchmark?<br>
Could you please share your experience? And if anyone
knows the tips to<br>
boost rabbitmq performance, please let us know. The
rabbit test client<br>
is using fanout exchange and MINIMAL_BASIC to publish
messages.<br>
<br>
BrokerType Publishers Consumers
SlowConsumers TgtMsgRate(mps)<br>
TgtMsgLimit AvgMsgSentRate(mps)
AvgSentTime(ns) AvgMsgRcvRate(mps)<br>
MinLat(ns) MaxLat(ns) AvgLat(ns)
MedLat(ns) 90%Lat(ns)<br>
Activemq@middlewarebench 1 1 0
25000 1000000 20776 5644 20776<br>
99484 7959080 259337 255760 316848<br>
Rabbit@middlewarebench 1 1 0 25000
1000000 20749 5440 20749<br>
171994 46140955 870211 913283 988979<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
Activemq@middlewarebench 1 1 0
100000 1000000 62695 5347 62695<br>
100634 19872040 491588 359763 510862<br>
Rabbit@middlewarebench 1 1 0 100000
1000000 56850 6790 54512<br>
315808 822398215 487403726 487170082
696265654<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
</div>
</div>
_______________________________________________<br>
rabbitmq-discuss mailing list<br>
<a moz-do-not-send="true"
href="mailto:rabbitmq-discuss@lists.rabbitmq.com"
target="_blank">rabbitmq-discuss@lists.rabbitmq.com</a><br>
<a moz-do-not-send="true"
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>
<span class="HOEnZb"><font color="#888888">
</font></span></blockquote>
<span class="HOEnZb"><font color="#888888">
<br>
<br>
-- <br>
Simon MacMullen<br>
RabbitMQ, Pivotal<br>
_______________________________________________<br>
rabbitmq-discuss mailing list<br>
<a moz-do-not-send="true"
href="mailto:rabbitmq-discuss@lists.rabbitmq.com"
target="_blank">rabbitmq-discuss@lists.rabbitmq.com</a><br>
<a moz-do-not-send="true"
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>
</font></span></blockquote>
</div>
<br>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
rabbitmq-discuss mailing list
<a class="moz-txt-link-abbreviated" href="mailto:rabbitmq-discuss@lists.rabbitmq.com">rabbitmq-discuss@lists.rabbitmq.com</a>
<a class="moz-txt-link-freetext" href="https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss">https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss</a>
</pre>
</blockquote>
<br>
</body>
</html>