У нас есть несколько серверов, развернутых у разных интернет-провайдеров (интернет-провайдеров).
Данные в реальном времени необходимо постоянно синхронизировать с этими серверами, я думаю, репликация MySQL может быть хорошим кандидатом для этой работы (мы используем MySQL на серверах).
Я знаю, что репликация работает в интрасети, но я не уверен, работает ли она в сложной топологии сети в Интернете и в подсети интернет-провайдера.
Некоторые факты:

  • Нужно работать как Master-Slave, Master для получения данных, около десяти подчиненных БД.
  • Не беспокойтесь о задержке репликации, 5 минут вполне достаточно.
  • В час синхронизируется не так много данных или транзакций.
  • Мы запускаем веб-приложение Java на каждом сервере.
0
superche 2 Янв 2012 в 19:47
Репликация mysql будет работать везде, где ведомое устройство может связаться с ведущим. больший вопрос заключается в том, сколько данных вы будете синхронизировать, поскольку вы будете платить за пропускную способность, используемую этими ведомыми устройствами.
 – 
Marc B
2 Янв 2012 в 20:04
Я бы не рекомендовал репликацию через глобальную сеть из-за неопределенности задержки и доступности. Также будут проблемы, если удаленные сайты используют одно и то же пространство ключей.
 – 
Nick
2 Янв 2012 в 22:47

1 ответ

Это работает нормально. Обычно вы хотите либо запустить его через VPN, либо использовать SSL в соединении с MySQL, если оно проходит через общедоступный Интернет.

Если ваши обновления записи требуют больше пропускной способности, чем у вас есть, это, конечно, будет ограничением, поскольку в журнале репликации будет практически каждый байт, используемый в операторах вставки, обновления и замены.

0
Ask Bjørn Hansen 26 Янв 2013 в 09:22