Understanding Replication Message Routing
An instance of AMPS will replicate a message to a given Destination
when all of the following conditions are met (and there is an active replication connection to the Destination
):
The message must be recorded in the transaction log for this instance (that is, the topic that the message is published to must be recorded in the transaction log with the appropriate message type).
The AMPS instance must be configured to replicate messages with that topic and message type to the
Destination
. (If a content filter is included in the replication configuration, the message must also match the content filter.)The message must either have been directly published to this instance, or if the message was received via replication, the
Destination
must specify aPassThrough
rule that matches the AMPS instance that this instance received the message from.The message must not have previously passed through the
Destination
being replicated to; replication loops are not permitted.
Each instance that receives a message evaluates the conditions above for each Destination
. The same process is followed when replaying messages from the transaction log while resynchronizing the downstream replication destination.
To verify that a given set of configurations replicates the appropriate messages, start at each instance that will receive publishes and trace the possible replication paths, applying these rules. If, at any time, applying these rules creates a situation where a message does not reach an instance of AMPS that is intended to receive the message, revise the rules (typically, by adjusting the topics replicated to a Destination
or the PassThrough
configuration for a Destination
) until messages reach the intended instances regardless of route.
Last updated