because of memory leak proble, I switched from activemq to hornetq today. it's memory footprint is much smaller. That's great. But the speed is much slower than using activemq.
In my usecase, I have a jms producer needs to send 5,000,000 persistent messages to a queue very quickly(in activemq, it's about a few minutes). And a few consumers consume them for many hours.
I use the default configuration except increate max heap to 2048M by -Xmx2048m(default 1024)
And also enable page by:
<address-setting match="jms.queue.fetch-queue2">
<max-size-bytes>1048576000</max-size-bytes>
<page-size-bytes>10485760</page-size-bytes>
<address-full-policy>PAGE</address-full-policy>
</address-setting>
How should I tune configurations to speed up it?
with activemq, the time spent in sending 10,000 messages is about 2 seconds, but in hornetq, it use 20+ seconds.