You should try increasing the prefetchSize for the network connection
- by default its 1000 - setting it to a higher value should help -
On 7 Oct 2009, at 19:52, nkleinsch wrote:
Yes, I'm using the ActiveMQ performance module producer. It prints
back this
line on startup:
INFO: Creating producer to: topic://topic.work.complete.main.0 with
non-persistent delivery.
On our application I've also set non-persistent delivery and are
seeing the
same performance.
- Nick
Joe Fernandez wrote:
Are you setting the delivery mode on the publisher to be non-
persistent?
Joe
http://www.ttmsolutions.com
nkleinsch wrote:
Adding some of the things I've tried in case they'd be of help to
other
people in the future.
- Disabled producer flow control
(http://activemq.apache.org/producer-flow-control.html) - Did
nothing for
client throughput
- Switched pendingSubscriberPolicy to a VM cursor
(http://activemq.apache.org/message-cursors.html) - Did nothing for
client throughput
- Tried changing the prefetch limit
(http://activemq.apache.org/what-is-the-prefetch-limit-for.html) -
Did
nothing for client throughput. Given that the default was the max
value
for nonpersistent topics, I didn't think this would do anything, but
tried it just in case.
- Set Async Sends on the producer
(http://activemq.apache.org/async-sends.html) - Did nothing for
client
throughput. This was also the default, but checked it to make sure.
Is there anything else I haven't tried here that could help improve
performance? I've read through all the FAQs and performance
documents and
am running out of ideas.
- Nick
nkleinsch wrote:
Hi all,
I'm having throughput issues on ActiveMQ 5.2 and was hoping for
some
tips to improve performance. We're sending out messages on a
topic at an
average rate of around 150/sec. The messages are object messages
that
vary in size, but range up to 5 kilobytes. We're using a network of
brokers between two sites, with all the producers in one site and
the
consumers in the other. We're seeing memory fill up on the
producing
site broker and the "messages received" falling behind "messages
sent",
implying that we're not able to send them over to the receiving
side
broker quickly enough. These messages don't need guaranteed
delivery, so
we're not using transactions or durable subscriptions.
I set up a test between the two sites using the ActiveMQ
Performance
Module. I'm using a stock ActiveMQ 5.2 and the ActiveMQ Performance
Module from the latest SVN. I'm running ActiveMQ on a server in
site 1.
If I run the producer and consumer on another server in site 1, I
get a
system average throughput of 5184. If I run the same test, except
with
the client on a similarly configured server in site 2, I get a
throughput of 112.
The transfer rate between the two servers is upwards of 3 MB/s,
so I
assume it isn't a bandwidth limitation. The latency between the two
sites (measured using ping) is 90ms. Why would latency have such
a large
effect on my message throughput rate? Are there any settings I
could
change that would help my performance?
Thanks,
Nick Kleinschmidt
--
View this message in context:
http://www.nabble.com/Latency-causing-throughput-problems-in-ActiveMQ-5.2-tp25777286p25792204.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.
Rob Davies
http://twitter.com/rajdavies
I work here: http://fusesource.com
My Blog: http://rajdavies.blogspot.com/
I'm writing this: http://www.manning.com/snyder/