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.