Thanks for the responses Tim. I was getting emails to my spam so I didn't see them.
After some digging it appears I know the reason for the different performance we see. ActiveMQ has a threadpool of 1 thread persisting messages received to a queue to disk. In the situation where we have multiple producers and multiple consumers ActiveMQ will deliver messages which are still queued to consumers. This means that with multiple producers and consumers we see higher performance because we skip the disk write. With 1 producer only one message is ever sent at a time and so the threadpool of 1 is never full and receives never get messages directly from the queue before they are persisted to disk. Does this assessment make sense to you? -- View this message in context: http://activemq.2283324.n4.nabble.com/Performance-Single-producer-and-consumer-is-slow-2-producers-and-2-consumers-is-fast-tp4728648p4728882.html Sent from the ActiveMQ - User mailing list archive at Nabble.com.