1

Я рассматриваю различные предложения 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 и требует только одного экземпляра для каждого клиента.

+0

Вам нужен один экземпляр ec2 или несколько экземпляров? – gkamal

+0

Только один экземпляр для каждого клиента (обновленный вопрос для отражения) – Dave

+0

Требуется ли для вашей единой установки приложение все ресурсы одного экземпляра? Кажется расточительным и дорогостоящим для установки одного клиента на сервер, если только система не нуждается в этом. Большинство SaaS используют кластер серверов, которые совместно используются всеми арендаторами программного приложения. Это более экономично для вас и означает, что каждый может совместно использовать обновленную версию программного обеспечения. –

ответ

1

Вы должны взглянуть на Docker https://www.docker.com/ и выполнить обслуживание в контейнерах с использованием нового ECS http://aws.amazon.com/documentation/ecs/ (обслуживание эластичных контейнеров).

Это позволит вам обеспечить среду в считанные секунды, и вы сможете запускать более одного экземпляра, таким образом оптимизируя затраты и использование ресурсов.