Я рассматриваю различные предложения Amazon для управления облачным приложением, и вкратце не уверен, что лучше всего попытаться выполнить то, что мне нужно, просто используя EC2 & EBS, Beanstalk или OpsWorks или даже CloudFormation.Какая рекомендуемая услуга AWS для приложений SAAS?
Чтобы уточнить, я хочу предложить пользователям нашего веб-сайта/Tomcat приложение на основе облачной пробной версии при регистрации, работающей на пользовательском домене (через Route53) с их данными, хранящимися на томе EBS. При создании экземпляра необходимо создать определенные каталоги в файловой системе.
Мое намерение заключается в выполнении соответствующих вызовов с использованием Java AWS SDK после успешной регистрации, чтобы предоставить систему для пользователя, который затем получит уведомление об URL-адресе для доступа к своему пользовательскому сайту.
Я не рассматриваю мультимасштабирование, так как количество одновременных пользователей никогда не будет высоким, но каждая версия клиентов должна работать изолированно.
Итак, я смотрю API-интерфейс beanstalk, но затем увидел OpsWorks Api, а затем шаблоны CloudFormation.
Если бы я использовал API Beanstalk, я мог бы запустить «среду» для каждого клиента, а это означает, что все клиенты будут частью одного и того же приложения «beanstalk», то есть, если я обновлю версию приложения. получать обновление, которое звучит положительно, однако кажется, что это неправильно делает среду для каждого клиента, поскольку типичные среды используются для тестирования, производства и т. д.
Итак, я в начале задаюсь вопросом, какова будет типичная стратегия развертывания для этот тип системы SAAS на основе AWS.
Для ясности приложение не требует RDS и требует только одного экземпляра для каждого клиента.
Вам нужен один экземпляр ec2 или несколько экземпляров? – gkamal
Только один экземпляр для каждого клиента (обновленный вопрос для отражения) – Dave
Требуется ли для вашей единой установки приложение все ресурсы одного экземпляра? Кажется расточительным и дорогостоящим для установки одного клиента на сервер, если только система не нуждается в этом. Большинство SaaS используют кластер серверов, которые совместно используются всеми арендаторами программного приложения. Это более экономично для вас и означает, что каждый может совместно использовать обновленную версию программного обеспечения. –