Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

[Dúvida] Como fazer deploy de api nodejs com express de forma gratuita (de preferência) ou paga

Fiz uma api rest em nodeJs com express, usando o mongoDB atlas como banco de dados através do mongoose, para implementar em um projeto front-end em react. Gostaria de subir o front e o back para que todos tenham acesso. Já sei como subir o front, mas, que alternativas eu tenho para fazer o deploy dessa api? De preferência de forma gratuita

3 respostas

Pode fazer na AWS vc criando uma conta nova existe o free tier pra 1 ano, pode criar uma EC2, apontar o dominio pela Route53, criar um banco simples ou instalar na sua ec2, acho que pode usar lambda também com free tier

Seria certo instalar o mongosh na maquina para usa-lo de banco? Outra duvida, o mongoDB atlas já não serviria?

solução!

o mongodb atlas é um banco gerenciado (um serviço de banco de dado), assim como um aws rds é um banco de dados as a service, vc acessa um painel, cria o banco da as permissoes, e ele te da uma url pra vc acessar criar suas tabelas... dessa forma vc nao precisa se preocupar se o banco ta offline, segurança... agora uma ec2 é uma maquina virtual, vc pode escolher uma com sistema ubuntu por exemplo, e instalar o que vc quiser lá como se fosse um computador.

usar um banco e uma aplicaçao separados (uma ec2 e um rds/atlas) por exemplo

  • vantagem: escalabilidade independente, alta disponibilidade, segurança, backup automatico
  • desvantagem: custo, latencia,

usar um banco e uma aplicaçao juntos na mesma ec2 (instalar um mongo ou um postgres por exemplo na mesma ec2 que esta rodando sua aplicaçao)

  • vantagem: custo inicial menor, simplicidade, menor latencia (ja que sua aplicaçao ao consultar o banco vai ser uma url local e nao precisa sair da ec2)
  • desvantagem: escalabilidade limitada, ponto unico de falha (se sua ec2 travar seu banco e sua aplicaçao ficam indisponiveis), manutencao e backup (voce que vai gerenciar isso de forma manual

nao existe forma errada, tudo depende do seu orçamento e o que vc esta disposto a arriscar. minha recomendaçao pra estudo uma ec2 com tudo la resolve seu problema até pra projetos pessoais.

agora pra um sistema maior em produçao com volume maior de usuários, ja é inviavel ou mais trabalhoso vc ter e manter uma mesma ec2 a aplicaçao e um banco de dados.