activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Hiram Chirino <hi...@hiramchirino.com>
Subject Re: STOMP benchmarks / Apache Apollo / ActiveMQ
Date Tue, 21 Feb 2012 14:46:39 GMT
On Mon, Feb 20, 2012 at 12:45 PM, Hervé BARRAULT
<herve.barrault@gmail.com>wrote:

> Hi,
> i have seen an interesting benchmark of activemq :
> http://hiramchirino.com/blog/2012/02/apache-apollo-1-0-released/
>
> But there are some measurements that i don't understand :
> Queue Load/UnloadPersistentLoad : 20b payload => AMQ 5.5.1 ~ 250 msgs/s
> (Apollo not really stable ~500 msgs/s)
>

Haven't had time to look closely at the cause of
Apollo's throughput variance in that case yet.


> Fan In/Out Load ScenariosQueue: 1 consumer/1 producer Persistent (20b
> payload) => AMQ 5.5.1 ~260 msgs/s (Apollo ~570 msgs/s)
> Queue: 10 consumer/5 producers Persistent (20b payload) => AMQ 5.5.1 ~2.7k
> msgs/s (Apollo not really stable ~5k msgs/s) <= more than 5 times 1
> producer ???
>
>
This should be no surprise, but the more consumers you attache to a queue
the faster
that queue will perform.  So to me, this makes sense that the 5P->10C case
would be faster
than the 1P -> 1C case.


> Topic : 1 consumer/1producer Persistent (20b payload) => AMQ 5.5.1 ~4k
> msgs/s (Apollo ~5k msgs/s) (16 times queue performance ???)
>
>
Topics have to do less work, no need to do things like picking an owner of
the message and such.
Also the messages get broadcast to consumers so the consumer rate increases.


> Partitioned Load ScenariosQueue: 1 consumer/1producer Persistent 1k msg =>
> AMQ 5.5.1 ~250 msgs/s ((Apollo not really stable ~400 msgs/s)
> Topic: 1 consumer/1producer Persistent 1k msg => AMQ 5.5.1 ~4k msgs/s
> ((Apollo ~5k5 msgs/s)
>
> Request/Reply Scenarios
>
> Queue: 1 consumer/1producer Persistent  (20b payload) => AMQ 5.5.1 ~1150
> msgs/s ((Apollo not really stable ~1400 msgs/s)
>
>
>
> Why are topics such more efficient than queues (16 times) ?
>

Also in the case of topics, you can producers can broadcast messages to
consumers without going though an intermediate queue which adds latency and
synchronization.


>
> Why hast request/reply scenario better result than a simple load test ?
>
>
All the sends in the request/reply are sent without requesting a STOMP
receipt. (Async send).  In the persistent load test, the persistent
scenarios are perform with receipt request and the the client waits for the
broker's receipt response before sending the next message.


>
> Thanks in advance for answers.
>
> Regards
>
> Hervé
>



-- 

**

*Hiram Chirino*

*Software Fellow | FuseSource Corp.*

*chirino@fusesource.com | fusesource.com*

*skype: hiramchirino | twitter: @hiramchirino<http://twitter.com/hiramchirino>
*

*blog: Hiram Chirino's Bit Mojo <http://hiramchirino.com/blog/>*

*
*

*
*

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message