По моему мнению, вы будете использовать постоянство JDBC, если хотите иметь отказоустойчивый брокер и не можете использовать файловую систему. Постоянство JDBC было значительно медленнее (во время наших тестов), чем ведение журнала в файловой системе. Для одного брокера лучше всего подходит журнальная файловая система.
Если вы работаете с двумя посредниками при активном / пассивном переключении при сбое, два посредника должны иметь доступ к одному и тому же журналу / хранилищу данных, чтобы пассивный посредник мог обнаруживать и принимать управление в случае сбоя основного. Если вы используете журнализированную файловую систему, то файлы должны быть на каком-то общем сетевом диске с использованием NFS, WinShare, iSCSI и т. Д. Обычно для этого требуется устройство NAS более высокого класса, если вы хотите удалить общий файловый ресурс как одна точка отказа.
Другой вариант заключается в том, что вы можете указать обоих брокеров на базу данных, к которой большинство приложений уже имеют доступ. Компромисс обычно прост в цене производительности, так как сохраняемая в журнале стойкость JDBC в наших тестах была медленнее.
Мы запускаем ActiveMQ в паре активный / пассивный брокер с сохраняемым в журнале постоянством через монтирование NFS на выделенное устройство NAS, и это очень хорошо работает для нас. Мы можем обработать более 600 сообщений в секунду через нашу систему без проблем.