Я разработал приложение с использованием AngularJS + NodeJS (вместе с MariaDB, Redis и Socket.io для уведомлений в реальном времени) и развернул его на одном узле Linode. Теперь я хотел бы организовать архитектуру таким образом, чтобы можно было легко масштабировать приложение в случае увеличения трафика в будущем.
Итак, моя идея - подготовить все следующим образом:
поэтому, когда мне нужно масштабировать, я добавляю новый узел с Nginx + NodeJS. Для MariaDB + Redis я бы установил кластеризацию для обоих (я использую Redis для сеанса и MariaDB для данных).
Теперь мои сомнения следующие:
какова будет правильная архитектура для приложения?
где мне разместить приложение AngularJS, на LoadBalancer или на каждом узле?
мне нужно, чтобы nginx действовал как обратный прокси на каждом узле?
Спасибо!