Embedded Linux + ActiveMQ on small hardware -- that sounds like an architectural challenge.
There is little general advice I can think of off the top of my head. With that said, there is plenty of tuning that can go into ActiveMQ. For one thing, the amount of CPU usage is going to be based on many things. First off, I would check for GC activity to see if the broker is simply starving for memory. If the JVM is performing GC's a good percentage of the time, there's little to be done short of getting the process more memory, or perhaps looking for a JVM provider that is tuned for low memory (not sure how much this could help). Perhaps making sure producer-flow-control is enabled and the memory usage parameters are set low enough. If GC is low, then I would look at the overall usage of ActiveMQ. For example, how many messages per second are being processed? If the answer is on the order of hundreds to thousands, then I don't think there's much to complain about - that's high and high CPU comes with the territory. Hope this helps. -- View this message in context: http://activemq.2283324.n4.nabble.com/Reducing-CPU-consuming-tp4689863p4689876.html Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
