Hi I'm hoping to use AMQ for a stock price publishing system, so high throughput and low latency are important factors. To verify that the kind of throughput we are after is achievable I've created a very simple producer/consumer pair based on the sample code in http://www.activemq.org/site/nms.html.
I've come across a potential problem where the consumer's receive rate dramatically falls after the number of enqueued messages exceeds a certain threshold. I'm pretty sure I must be falling foul of a configuration problem because the number 1000 seems to be significant. If the publisher sends 1000 messages, the consumer happilly receives them in a couple fo seconds. But, if I configure the publisher to send 1500 messages in quick succession, I see a perculiar pattern: the consumer receives the first 300 messages quickly, it then receives the next 200 messages very slowly (approx 5 msgs/s) until there are exactly 1000 messages left in the queue and then it speeds through the last 1000 in just 2 seconds. If I increase the number of messages sent, the same pattern remains i.e. the consumer runs slowly until only 1000 messages remain then speeds up! Topology: Client 1 and Client 2 both running on a single workstation, connecting via OpenWire using NMS AMQ 4.0.1 Broker running on separate machine (Windows 2003 Server, J2SE 1.5.0_06) Client 1 opens a session and publishes n (non-persistent) messages to a single topic. Client 2 opens a session and registers a listener on the same topic. I've tried various options to overcome this, none of which seem to have had any impact. On connection uri I have: jms.useAsyncSend=true&consumer.dispatchAsync=false On Topic name I have: jms.useAsyncSend=true&consumer.dispatchAsync=false Any ideas/solutions gratefully received. Best regards Rob Lugt -- View this message in context: http://www.nabble.com/Topic-consumer-appears-throttled-tf2318926.html#a6451007 Sent from the ActiveMQ - User mailing list archive at Nabble.com.