Hi,
Thinking about a switch to a different JMS provider we are currently
testing ActiveMQ. As the results of these tests might be interesting
also for other people, I am posting here a protocol of a small failing test:
* Summary:
Using a very simple producer and consumer (I appended the code to this
message) the messages are received in the wrong order.
The following setting produced problems in 7 of 10 cases:
- One broker
- Two producers sending 100000 messages each
- One consumer
- Broker, producers and consumer are all running on the same host.
* Test protocol:
Preparations:
gunzip test.tar.gz
tar xvf test.tar
cd test
ant compile
Start the broker:
cd $ACTIVEMQ_HOME
bin/activemq
Start the consumer:
ant \
-DconsumerName=consumer \
-Durl=tcp://localhost:61616 \
-DproducerCount=2 \
-DmessageCount=100000 \
consumer
Start the producers:
ant \
-DproducerName=producer1 \
-Durl=tcp://localhost:61616 \
-DproducerCount=2 \
-DmessageCount=100000 \
producer
ant \
-DproducerName=producer2 \
-Durl=tcp://localhost:61616 \
-DproducerCount=2 \
-DmessageCount=100000 \
producer
* Results:
Running the test 10 times the messages were received 3 times in the
right order and 7 times in a mixed up fashion:
1. Succesfully received all messages
2. Wrong message order: Received message 33045 after message 33043
from producer2
3. Wrong message order: Received message 97909 after message 97829
from producer1
4. Wrong message order: Received message 67839 after message 67837
from producer2
5. Wrong message order: Received message 63717 after message 63610
from producer2
6. Succesfully received all messages
7. Wrong message order: Received message 61603 after message 61576
from producer2
8. Wrong message order: Received message 51119 after message 49043
from producer2
9. Succesfully received all messages
10. Wrong message order: Received message 99710 after message 99707
from producer1
Thanks
--
Dietrich Bollmann