Да, вы делаете это с помощью общего хранилища сообщений, и несколько брокеров используют это хранилище. Только один из этих брокеров будет активен в любое время - тот, который первым подключился к магазину. Это управляется с помощью замков. Когда активный посредник падает, второй посредник снимает блокировку и затем становится активным, обрабатывая любые сообщения в хранилище, которые не были отправлены первым посредником. Клиенты (производители и потребители) подключаются к паре брокеров через строку подключения
failover:(tcp://broker1Host:broker1Port,tcp://broker2Host:broker2port)
Только брокер, который удерживает блокировку, будет принимать соединения, поэтому строка аварийного переключения указывает, что клиент должен попытаться подключиться к следующему брокеру в списке. Используя этот механизм, можно даже получить несколько подчиненных, ожидающих смены мастера.
Более подробную информацию об этом можно найти по адресу http://activemq.apache.org/shared-file-system-master-slave.html, если у вас есть доступ к сетевой файловой системе, поддерживающей блокировки (например, SAN или NFS), или, если нет, вы можете использовать базу данных в качестве сообщения. магазин http://activemq.apache.org/jdbc-master-slave.html