Dimensionando o aplicativo AngularJS + NodeJS no Linode

Dimensionando o aplicativo AngularJS + NodeJS no Linode

Desenvolvi um aplicativo usando AngularJS + NodeJS (junto com MariaDB, Redis e Socket.io para notificações em tempo real) e o implantei em um único nó Linode. Agora gostaria de organizar a arquitetura de forma que possa dimensionar facilmente o aplicativo em caso de aumento de tráfego no futuro.

Então minha ideia é preparar tudo da seguinte forma:

  • 1 Servidor Linode LoadBalancer que será o ponto principal e redirecionará as solicitações vindas dos usuários
  • 1 servidor de nó Linode onde irei instalar o Nginx que, atuando como proxy reverso, redireciona para o servidor NodeJS no mesmo nó
  • 1 servidor de nó Linode para servidor MariaDB e Redis

então, quando preciso escalar, adiciono um novo nó com Nginx + NodeJS. Para MariaDB + Redis eu definiria o clustering para ambos (eu uso Redis para a sessão e MariaDB para os dados).

Agora minhas dúvidas são as seguintes:

  • qual seria a arquitetura adequada para o aplicativo?

  • onde devo colocar o aplicativo AngularJS, no LoadBalancer ou em cada nó?

  • preciso que o nginx atue como proxy reverso em cada nó?

Obrigado!

informação relacionada