У меня есть проект, над которым я работаю, для которого потребуется множество ресурсоемких сервисов, работающих 24/7, таких как поисковые роботы, вычисления для рекомендаций и т. Д. Мой план состоит в том, чтобы создать общедоступный веб-сайт, на который пользователи могут входить и взаимодействовать с ним, размещенный на Amazon. EC2, чтобы гарантировать, что он почти всегда работает (да, я знаю, что у Amazon недавно был огромный сбой). Поскольку на EC2 вы получаете оплату в зависимости от времени процессора, я хотел бы запускать все свои ресурсоемкие службы на моих собственных локальных компьютерах. Затем я буду синхронизировать базу данных в облаке Amazon с моими локальными базами данных. Я думаю, это должно снизить мои расходы. Мой единственный вопрос - как лучше всего все соединить. Чтобы попытаться дать немного больше деталей, оставаясь при этом двусмысленным: скажем, пользователь добавляет то, что я назову здесь объектом, через веб-интерфейс. Затем мне нужно каким-то образом сообщить мне локальным серверам, что пользователь добавил этот объект, и выполнить задачу. t
. Скажите задачу t
изменяет базу данных. Я мог бы либо изменить базу данных Amazon, чтобы изменения сразу были видны пользователю, либо изменить мою локальную базу данных, которая в конечном итоге будет реплицирована в базу данных Amazon. Итак, вот два моих основных вопроса:
Мы очень ценим все предложения или рекомендации.
В вашей ситуации вы можете изучить Amazon. Виртуальное частное облако (VPC) для связи между вашими экземплярами EC2 и локальными серверами.
Трудно ответить, не зная больше о своей ситуации. Имеет ли значение, если пользователь добавляет объект, но не видит его в течение часа? Что это за объект? Запись в БД или это файл?
Являются ли ваши вычисления интенсивными в базе данных или в базе данных просто хранятся результаты вычислений? В последнем случае зачем вообще нужна локальная база данных? Если первое, ваши вычисления в основном выбирают? Вы можете настроить репликацию «главный-подчиненный» между двумя базами данных, при этом вычисления будут выполняться только на подчиненном устройстве.