2017-02-13 47 views
0

Итак, я хотел бы создать свое приложение таким образом, чтобы каждая организация могла получить свой собственный экземпляр.Разверните экземпляр моего приложения для каждого клиента?

Мой образ мыслей здесь состоит в том, что я мог бы что-то сделать с помощью AWS или цифрового океана или любого другого, чтобы развернуть приложение java (dropwizard) каждый раз, когда новый клиент регистрирует свою компанию с нами.

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

В основном, когда регистрируется компания ... Я хотел бы, чтобы раскрутить экземпляр ядра API, а экземпляр сервера БД (или два может быть один экземпляр здесь, я думаю)

Это вещь? Я бы это сделал, но я не совсем уверен, что искать!

Я знаю, что это не вопрос dropwizard, но я отметил его таким образом, потому что это приложение dropwizard, которое я создаю, и я считаю, что люди в этом сообществе могут иметь схожие проблемы! Не стесняйтесь редактировать!

ответ

0

Вам нужно будет автоматизировать процесс вращения окружающей среды, используя что-то вроде CloudFormation, Ansible, Terraform, Chef, Puppet и т. Д. В этом пространстве есть много инструментов. Эти инструменты называются инфраструктурой как код (IaC). Как только вы его автоматизировали, настройка новой среды для нового клиента была бы простой задачей, чтобы отменить соответствующий скрипт.

+0

Удивительно, спасибо за информацию. Кроме того, знаете ли вы, есть ли способ сделать это, так что это не совсем экземпляр для каждого клиента, но больше похоже на то, что он увеличит лишние экземпляры БД и только сервера если трафик высок? и вращать их вниз, когда трафик низкий? и синхронизация данных? – MickeyThreeSheds

+0

Вы должны использовать группы AutoScaling и балансировщики эластичной нагрузки для обработки вращающихся веб-серверов по мере необходимости и отключения их при необходимости. Если вы хотите сохранить изолированную среду между клиентами, вы также можете изучить контейнеры Docker и службу ECS. Базы данных гораздо сложнее масштабировать по требованию, и решение будет зависеть от точного механизма базы данных, который вы используете. Посмотрите на использование AWS Aurora в качестве базы данных, если это возможно. –

+0

Эй, вставьте один из этих комментариев в качестве ответа ниже, чтобы я мог отметить это как правильный ответ! :) Благодаря! – MickeyThreeSheds