'Rabbit MQ performance
We have this use case for implementing data synchronization between two environments (env for short) - an active (and very busy) and a fail-over env. The two env have multiple servers with multiple Web Services (WS) on each server but only one Database (DB) per env. The idea is if any of the WS on any of the servers in the active env sends a message, only one WS on one of the servers in the fail-over env receives it and updates the DB accordingly. We do not care much WHEN the message is delivered. What we care about is:
- if Rabbit MQ accepts the message, it must deliver it at some point
- if Rabbit MQ’s status prevents it from delivering a message it should reject it right away
- in both cases above, there should be minimal performance impact to the WS
We think we can use Rabbit MQ broker with Quorum type queue to make this possible (we did some initial experiments). But we have this question regarding configuration – can we achieve this in synchronous mode without much performance penalty or async mode without running out of resources (threads, memory) waiting for task cancellation? What would the configuration look like in each case?
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|
