Can you supply your client test code?  Better yet, could you modify the 
replicated-failback-static example to reproduce your use-case (minus the 
simulated network delay, of course) and then push it to your GitHub repo?


Justin

----- Original Message -----
From: "adclayton" <adclay...@paypal.com>
To: dev@activemq.apache.org
Sent: Monday, May 23, 2016 2:27:55 PM
Subject: Re: Artemis Replication before acknowledgement

My cluster configuration is a simple replicated-failback-static configuration
that can be found in the example from the Artemis project given below.
https://github.com/apache/activemq-artemis/tree/master/examples/features/ha/replicated-failback-static

My use case is that my cluster must have zero message loss when failing
over.  The only way to achieve this is with synchronous replication.  The
live server must not acknowledge a message as received and persisted until
it has confirmed the message has been replicated to the backup.

I setup two artemis instances.  The master on my local, and the backup in a
linux VM.  I then used linux netem to simulate a latency of several seconds
between the two machines.  I then ran a test where I pushed many hundreds of
messages onto a durable queue in a transacted session.  My test confirmed
that I was able to push the messages in a few hundred milliseconds, thus
proving that the messages were not replicated to the backup server before
the live server confirmed that they were successfully placed on the queue.  

Is this the expected behavior for this configuration?  Is there another
configuration which does the synchronous replication?  If so can you point
me to an example of this configuration?



--
View this message in context: 
http://activemq.2283324.n4.nabble.com/Artemis-Replication-before-acknowledgement-tp4712215p4712279.html
Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.

Reply via email to