RabbitMQ supporta il clustering per impostazione predefinita, ma le code non vengono replicate e sono associate al nodo su cui sono state create. Ora sto cercando dei modi per rendere RabbitMQ altamente disponibile oltre alla soluzione DRBD che hanno documentato, perché sembra uno spreco di risorse riservare un intero server che non sta facendo altro che aspettare che il server attivo scenda.Come eseguire il failover delle code RabbitMQ?
Sto pensando a un setup in cui ci sono due code. Quando viene pubblicato un messaggio, voglio che il cluster RabbitMQ invii il messaggio a una delle due code, a seconda di quale delle due è attiva. So che l'editore riceverà un errore se tenta di pubblicare su una coda non disponibile e che l'editore può riprovare con l'altra coda, ma mi chiedo se questo può essere fatto automaticamente a livello di cluster in modo che non lo faccia Devo scrivere codice client per gestirlo. Può essere fatto?
Come sarebbe meglio di uno scambio alternativo? – guiomie
@guiomie, in Exchange alternativo, se il nodo master si interrompe, tutti i messaggi sono spariti. La configurazione attiva/attiva copierà ogni messaggio sul server di riserva quando viene inviato al master. –