Dear Active MQ users group,

I am benchmarking the maximum number of queues that activemq can support;
With default config I can
go up to 1000 queues; 

For more than 1000, I need to add in the -
xbean:conf/activemq-scalability.xml to the command line for
broker startup;  

I also needed to change the Xmx in activemq file to 4096M like shown below.
ACTIVEMQ_OPTS_MEMORY="-Xms256M -Xmx4096M"

Also, I had to add -Dorg.apache.activemq.UseDedicatedTaskRunner=false
to ACTIVEMQ_OPTS to get the client, server from running out of memory and
ability to create threads;

Now, I am able to create 10,000 + queues; Around 11108, I think I see memory
pressures; At this point,
I am seeing 
Destination destination = session.createQueue(queueName);

and/or

        MessageConsumer consumer = session.createConsumer(destination);
        consumer.setMessageListener(amqHandler);

starts to seriously slow down;

Instead of further increasing JVM memory and further going up the number of
queues and iterating, I
wanted to find out the resource footprint required by a queue.  What are the
number of threads,
memory, file descriptors, disk space that are needed when a new queue is
added to active mq?
Assume empty or almost empty queues. I want this information for both client
and broker side.
Assume the above mentioned scalable configs and suggest any other tweaks if
necessary.

Use case

We have 200 or so different job types that come in from 5000 or so
customers; The more queues we 
can create, the more natural the system behavior since as we put multiple
job types or customers on the
same queue, we create sequencing between unrelated things. I know million
queues don't make a whole lot 
of sense, but I am trying to find a big number that can be scalable.

Thanks
Vijay 

--
View this message in context: 
http://activemq.2283324.n4.nabble.com/What-is-the-resource-footprint-of-a-queue-on-broker-and-client-sides-tp3637053p3637053.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Reply via email to