MSMQ Disaster Recovery
Я смотрю на использование MSMQ в наших корпоративных приложениях. Единственная область, по которой я не смог найти информацию, - это аварийное восстановление.
сценарий
В серверной комнате вспыхнул пожар. Все оборудование было уничтожено, и нам нужно провести операции на резервной площадке в нескольких милях от нас.
С сервером SQL у нас включена репликация, которая предоставляет резервную копию базы данных операций на сайте резервного копирования. В случае аварии мы можем переключиться на резервный сайт и продолжить работу с обновленной базой данных.
С помощью MSMQ я хотел бы знать, как можно добиться того же стиля репликации, чтобы в случае внезапного прекращения существования сервера, на котором размещена очередь, мы могли переключиться на резервную очередь, которая содержит те же необработанные Сообщения.
Можно ли этого достичь? Если MSMQ не может легко с этим справиться, возможно ли что-то сделать на уровне хранилища?
1 ответ
В MSMQ нет ничего, что сделает это автоматически. У вас есть несколько вариантов.
- Создайте географически распределенный кластер, используя репликацию хранилища в вашей сети SAN для репликации между двумя сайтами. Настройте MSMQ в качестве кластерного ресурса (который поддерживается).
- Используйте что-то вроде двойного дубля для репликации папки MSMQ на сервер на втором сайте. Убедитесь, что MSMQ на втором сервере настроен для просмотра правильной папки и что служба MSMQ на сервере резервного копирования отключена.
Убедитесь, что очередь настроена так, чтобы сообщения могли считываться в очередь и не удалялись после перезапуска службы MSMQ.