Приложение SaaS на Elastic Beanstalk

Я разрабатываю SAAS application, который будет размещен на AWS, Ранее я использовал Elastic Beanstalk управлять приложениями. Я мог бы разработать приложение так, чтобы все клиенты использовали один DB (это должно быть легко с помощью EB). Есть ли способ создать отдельную базу данных для каждого клиента?
Я мог бы использовать среды для этого (что не кажется хорошей идеей, поскольку среды не предназначены для этого), или создать отдельное приложение beanstalk для каждого клиента (я не уверен, что это не сделает обновления более хлопот).
Я мог бы также отложить EB и использовать разные сервисы AWS.

Мой вопрос — может EB использоваться для создания мультитенанта SAAS приложение с изолированными базами данных, или я заблокирован общим решением (одно приложение, одна база данных)?

0

Решение

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

Если ваша архитектура SaaS использует среды EB или базы данных на основе клиента, то:

  1. Вам придется платить за ресурсы за клиента. Это включает в себя экземпляры EC2, RDS и т. Д.
  2. Когда клиент регистрируется, ему нужно будет дождаться инициализации этих ресурсов. Эта задержка может заставить их уйти в другое место и не возвращаться.
  3. По мере роста вашей клиентской базы будут расти и ваши ресурсы. Обновления потребуют больше времени для применения.

Я бы не рассматривал многопользовательскую архитектуру базы данных как «заблокированную». Я считаю, что это «правильно», если оно правильно разработано.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]