Назад | Перейти на главную страницу

RabbitMQ и федерация. Перекрестная виртуальная очередь центра обработки данных?

Я создаю систему, которая размещается в двух центрах обработки данных для обеспечения отказоустойчивости, используя модель «живой / резервный». Системе требуется очередь сообщений, доставляющая сообщения для обработки серверной частью системы. Мой проект на данный момент требует, чтобы эта очередь сообщений (и обмены и т. Д.) Была совместно использована обоими центрами обработки данных в виде единой виртуальной очереди. Таким образом, аварийное переключение может быть достигнуто путем отключения потребителей очереди на сайте A и запуска их на сайте B - потребители просто подпишутся на своего локального брокера, подключатся к единому глобальному обмену и начнут получать сообщения, отправленные туда, в том числе те, которые были поставлены в очередь, пока произошла отработка отказа.

Я использовал RabbitMQ в прошлом и знаю, что он может выполнять кластеризацию и что кластеризация не подходит для соединений WAN - она ​​очень нетерпима к потере пакетов / разделению сети. Я читал о подключаемом модуле федерации rMQ, который, кажется, подразумевает, что два федеративных брокера могут разрешить привязку своих бирж клиентам, подключающимся друг к другу.

Я не уверен, смогу ли я использовать это для достижения именно того, что мне нужно, казалось бы, мне нужно, чтобы каждый брокер DC определял обмен, объединял двух брокеров, а затем клиентам на каждом сайте нужно было бы привязаться к обоим биржа, размещенная на их локальном брокере, и размещенная на удаленном брокере. Каждая отдельная биржа по-прежнему будет локальной для конкретного брокера. Я правильно понял?

Второй вопрос - предположительно плагин федерации работает с отдельными кластерами rMQ? Если бы у меня был кластер брокеров rMQ на сайте A и аналогичный кластер на сайте B, мог бы я объединить их вместе?