Alternate Exchange behavior #2706
-
Scenario: I'm running my RabbitMQ in cluster mode with 3 nodes. I specify 2 exchanges, and keep the second exchange as an Alternate Exchange. I understand that an exchange is replicated across all nodes in the cluster. Question: Will the message be lost or will it start processing from the exchange of other node in the cluster since exchange is replicated? |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
Exchanges do not actually exist as separate entities. They are just named routing tables and routing modules. So when a node that a publisher was connected to fails, so will the connection and channel that were aware of that message. They are not replicated. |
Beta Was this translation helpful? Give feedback.
Exchanges do not actually exist as separate entities. They are just named routing tables and routing modules. So when a node that a publisher was connected to fails, so will the connection and channel that were aware of that message. They are not replicated.
Such publishers will not get a Publisher confirm and will have to re-publish the message, regardless of whether the target exchange had an alternate exchange configured or not. In other words, alternate exchanges change nothing in terms of Publisher-side Data Safety.