Nothing you've described jumps out as a clear reason for the behavior you're seeing, and I've never heard anyone describe similar behavior.
Do you see the same behavior with one consumer? (i.e. 1:1 is slow, 2:1 is fast?) And is it just as fast for three (or four) producers as for two, or does it get even faster with more producers? Also, can you characterize in more detail what "fast" and "slow" mean here? Do the producers go faster, or do the consumers? How many messages per second per consumer/producer? Are any resources (CPU, memory, disk I/O, disk space, network I/O) on any of the hosts involved (broker, producers, consumers) pegged or close to pegged? Is the behavior the same for a larger prefetch buffer (e.g. 100 or 1000)? Tim On Jul 18, 2017 2:19 PM, "Daniel" <danielban...@gmail.com> wrote: I've set up ActiveMQ on a host. I run one producer and one consumer. The producer is simply pumping 10 000 messages into a queue using a pooled connection. The consumer simply fetches messages. This is slow. When I add another consumer process nothing changes. When I add another producer process (now there are 2 producers and 2 consumers) the producers suddenly start pumping messages significantly faster and the consumers receive faster. I can't work out why this is. What explains this behavior? I'm using persistent messages. I see the same behavior with consumer prefetch of 1 of 0. -- 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-tp4728648.html Sent from the ActiveMQ - User mailing list archive at Nabble.com.