Rails API + VueJS Архитектура размещения серверов - PullRequest
2 голосов
/ 13 марта 2020

У меня есть приложение Rails API only, которое используется для бэкэнда, и два VueJS приложения, которые я использую в качестве внешнего интерфейса. Оба приложения Vuejs делают несколько вызовов API Rails. Я также подумываю о развертывании в Digital Ocean.

Мой вопрос таков: как лучше расположить архитектуру сервера, если я использую rails и vuejs. Я думал о том, чтобы держать это очень отдельно, но мог быть излишним и повторным, у кого-нибудь еще есть какие-нибудь мысли?

Vuejs Приложение 1

LoadBalancer -- Web Server 1
                Web Server 2

Vuejs Приложение 2

LoadBalancer -- Web Server 1
                Web Server 2

Rails API

LoadBalancer -- Web Server 1
                Web Server 2
                Worker Server
                Postgres    

1 Ответ

1 голос
/ 13 марта 2020

Я не уверен, что вам нужно балансировать нагрузку для приложения Vue, так как оно просто минимизирует файлы c, которые вы отправляете один раз каждому пользователю, верно? Я имею в виду, если вы не планируете миллиарды хитов, я думаю, что это может быть излишним?

В зависимости от объема трафика c и сложности API имеет смысл, что именно здесь должно произойти балансирование нагрузки, если в любом месте.

Я только что сделал ту же самую вещь, используя Rails в качестве API для Vue SPA, и я использовал AWS Elasti c Beanstalk.

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

Итак, вот мои настройки:

Vue SPA - served directly from S3

RDS Database instance x 1 - Part of EB out of the box

Load balancer - Part of the EB out of the box

App Server x 4 - EC2 Instances out of the box with EB

Все вышеперечисленное тупо легко настраивается, и вы можете изменить размер ваших серверов или число, которое вы используете, всего за несколько кликов. Это действительно делает весь этот процесс фантастически легким. И развертывание вашего приложения так же просто, как eb deploy:)

Одним словом предупреждения, посмотрите размеры по умолчанию и количество серверов, которые дает вам установка fre sh EB, я потратил больше денег, чем я ожидается в первый месяц, так как я работал на гораздо больших серверах, чем мне было нужно.

...