У меня есть 3 уровня приложения. Мой вопрос относится к среднему ярусу остальных пружинных сапог и бэкэнду mongodb на aws. Я имею в виду запуск контейнера mongodb docker в варианте elasti c beanstalk / single container для масштабирования бэкэнда.
Мои остальные API будут работать как контейнер docker в отдельной среде beasstalk elasti c.
Насколько я понимаю, elasti c beanstalk будет масштабировать сервис dockerized mongodb по мере необходимости.
Архитектура высокого уровня:
Внешний интерфейс - Angular - s3 stati c хостинг веб-сайтов
Средний уровень - 3 службы Spring boot rest - 3 отдельных среды с одним контейнером docker масштабируется с elasti c стебель фасоли.
Backend - Mongodb - Single Docker контейнер масштабируется с elasti c стебель фасоли.
Вопросы:
Qn: это будет работать? Будет ли масштаб каждого уровня? Сможет ли служба отдыха подключиться к базе данных? Сколько это будет стоить? Будет ли слишком большая задержка между средним уровнем и бэкэндом?
Qn: Это безрассудная погоня по какой-либо причине, у которой есть какое-то препятствие, которого я не вижу? Мои исследования этого подхода почти ничего не дали. Будет ли кто-то отговорить даже попробовать это? :)
Примечания:
Elasti c бобовый стебель предлагает удобство при несколько более высокой стоимости. Я готов принять это, так как я просто тестирую. Kubernetes / docker роя кажутся слишком сложными и отнимающими много времени, так как мне нужно сосредоточиться на функции приложения в ближайшей перспективе.
Я смогу сопоставить том с физическим местоположением в aws. Угадай, elasti c блок хранения или EFS. Есть плюсы и минусы или лучшие альтернативы?
Я знаю, что для эффективности могу использовать тонкие банки.
Я протестировал его с mongodb, развернутым на EC2. Я должен быть в состоянии настроить его для работы конфигурации запуска и автомасштабирования групп. Но я думаю, что это будет дороже, и, вероятно, больше работы.