You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by AlexP <ap...@standardset.com> on 2013/10/30 20:03:04 UTC

Apollo read vs write performance discrepancy - what can we optimize?

We are doing some performance testing and noticing that we can sustain a rate
of about 390 operations per second while writing messages onto a queue,
however, when reading messages, our performance drops to about 4 operations
per second.

A little background.  We are using Apollo 1.6 and using STOMP to connect to
the Apollo.  So, while the write is a rather simple operation, a read
requires that we:

1) Create a subscription 
2) Receive a single message
3) Acknowledge the message
4) Tear down the subscription

(yes, it's a lot of overhead for a single message)

For now, we are processing a single message at the time because on the other
side is a Browser and we are not in control of how messages it will process.  

When using simple htop to look at the processes taking up most of the CPU,
during the PUT message operation Apollo is not even at the top, however,
during the GET message operation Apollo is taking up most of the CPU
availability.  

So, what ever we are doing during the GET is not very efficient.

One way we can optimize this is to get N messages at a time.  This way we
can "batch" the retrieval of the messages.  We will be looking into this.  

So my questions is what can we do on the Apollo side to optimize the read
operations?  What settings should we be looking at?

Thanks.
-AP_





--
View this message in context: http://activemq.2283324.n4.nabble.com/Apollo-read-vs-write-performance-discrepancy-what-can-we-optimize-tp4673528.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.