You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by multani <mu...@gmail.com> on 2014/02/07 11:15:17 UTC

How to improve the performance of composite queue

Hi,

We are using composite queue to make a message can be received by several
services, but it seems that it has some performance issues.

We applied two activemq brokers. We can call them A and B. A will connect to
B by network connector. All message received in A will be send to B by the
setting of staticallyIncludedDestinations. Messages will be send to B's
composite queue and be forwarded to 15 different queues.

When we send about 150 message to A and all the messages will be forward to
B very fast. But when we increase the request volume to 250 per seconds, the
messages start to stuck in A and goes to B very slow.

We also use a single broker to test the performance of composite queue. It
also has a similar issue. The messages senders will be blocked for a while
if it send too many message in a short time.

I have checked the usage of memory, io and cpu of its host. It seems that
there is still some resource available and it does not reach hardware
bottleneck. 

Is there any way to improve the efficiency of composite queue? Or is there
any configuration can improve it?

Please help me.  



--
View this message in context: http://activemq.2283324.n4.nabble.com/How-to-improve-the-performance-of-composite-queue-tp4677620.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Re: How to improve the performance of composite queue

Posted by multani <mu...@gmail.com>.
I have tried to use non-persistent messages. Messages are still blocked on
broker A. The CPUs remains 2x% usage while using top to monitor.

If non-persistent messages are still blocked, can eliminate io as the cause
of this issue?






--
View this message in context: http://activemq.2283324.n4.nabble.com/How-to-improve-the-performance-of-composite-queue-tp4677620p4677682.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Re: How to improve the performance of composite queue

Posted by artnaseef <ar...@artnaseef.com>.
If broker B is copying the message to 15 different queues from a source of
1 queue, then B will limit your performance at some point.  Given that you
are not seeing CPU reach limits (it would help to know what % is seen), I
suspect PERSISTENT messages are being used, and so the real bottleneck is
waiting for data to SYNC to disk (i.e. waiting for hard disk platters to
spin with the head in the right place).

To see that bottleneck, check for IOWAIT or SYSTEM CPU usage.  If they are
anywhere above about 10%, that's an indication this may be the case. 
Another way to tell is to disable persistence on the broker and see if the
problem goes away (or use a RAM disk if the system has enough memory).

Note that IOWAIT is measured in terms of how long a single process is
delayed while the O/S is waiting for hardware I/O to complete in order to
continue the process.

>
>
> Hi,
>
> We are using composite queue to make a message can be received by several
> services, but it seems that it has some performance issues.
>
> We applied two activemq brokers. We can call them A and B. A will connect
> to
> B by network connector. All message received in A will be send to B by the
> setting of staticallyIncludedDestinations. Messages will be send to B's
> composite queue and be forwarded to 15 different queues.
>
> When we send about 150 message to A and all the messages will be forward
> to
> B very fast. But when we increase the request volume to 250 per seconds,
> the
> messages start to stuck in A and goes to B very slow.
>
> We also use a single broker to test the performance of composite queue. It
> also has a similar issue. The messages senders will be blocked for a while
> if it send too many message in a short time.
>
> I have checked the usage of memory, io and cpu of its host. It seems that
> there is still some resource available and it does not reach hardware
> bottleneck.
>
> Is there any way to improve the efficiency of composite queue? Or is there
> any configuration can improve it?
>
> Please help me.
>
>
>
> _______________________________________________
> If you reply to this email, your message will be added to the discussion
> below:
> http://activemq.2283324.n4.nabble.com/How-to-improve-the-performance-of-composite-queue-tp4677620.html
> To start a new topic under ActiveMQ - User, email
> ml-node+s2283324n2341805h3@n4.nabble.com
> To unsubscribe from ActiveMQ - User, visit
> http://activemq.2283324.n4.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=2341805&code=YXJ0QGFydG5hc2VlZi5jb218MjM0MTgwNXwtMjA1NDcyNjY5MQ==






--
View this message in context: http://activemq.2283324.n4.nabble.com/How-to-improve-the-performance-of-composite-queue-tp4677620p4677628.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.