Я работаю над веб-сервисом на основе базы данных с клиентами в США и Австралии. В настоящее время мы размещены в США, однако наши австралийские клиенты испытывают задержки. Задержка в первую очередь связана с тем, что страницы запускают запросы AJAX, которые требуют выполнения некоторой работы с базами данных в нашей базе данных в США, и для выполнения этих запросов требуется время.
В идеале мы ищем какую-то систему распределенных баз данных, которая копирует нашу основную базу данных в США в Австралии (и, возможно, в других местах, если мы решим расширить ее позже).
Есть ли у кого-нибудь предложения по услугам, которые предлагают что-то подобное? Что-то вроде CDN (CacheFly и т. Д.), Который основан на сети, прост в настройке и т. Д., Но для баз данных вместо статических файлов.
В идеале он должен быть полностью прозрачным для приложения и абстрагироваться от всего управления распределенной базой данных, синхронизации и т. Д.
Не зная требований, сложно сказать ...
Вы можете настроить репликацию master-slave (пара баз данных поддерживают это) и читать с подчиненных устройств, расположенных в Австралии. Записи по-прежнему должны быть отправлены в США, но если это редко, это может не быть проблемой. Но обратите внимание, что ведомые устройства будут рассинхронизированы, что может быть проблемой.
Если вам нужна быстрая запись и синхронизация данных, я не понимаю, как вы можете абстрагироваться от распределенного характера базы данных от вашего приложения. Такая прозрачность приведет к медленному отклику, чего вы стараетесь избегать.
Например, в случае репликации M-S вы можете читать данные с мастера после обновления, но вы не можете сделать это, не встроив эту логику в свое приложение, что нарушает прозрачность.
CDN для баз данных? Не знаю, наверное, амазонка, может, хостеры mongodb ...