Ir para o conteúdo
PHP e frameworks

Aplicações Node.js e Python em hospedagem compartilhada: como elas rodam

Aplicações que não são PHP rodam como um processo próprio e permanente, e não como arquivos executados a cada visita. O painel cria esse processo, reserva uma porta interna e encaminha o domínio até ela; a sua parte é indicar a pasta do projeto, o arquivo de entrada e a versão da linguagem — e reiniciar o processo a cada alteração no código.

A diferença em relação ao PHP

Com PHP, o servidor lê o arquivo, executa e descarta tudo ao final da requisição — salvar o arquivo já basta para ver a mudança. Com Node.js ou Python, o código foi carregado na memória quando o processo subiu e continua ali. Enquanto o processo não for reiniciado, ele segue servindo a versão antiga. Essa é a diferença que mais gera dúvida: o arquivo está atualizado no servidor e o site insiste em mostrar o comportamento anterior.

O que o painel pede

  • Versão da linguagem — a mesma que você usa para desenvolver, sempre que possível.
  • Pasta do projeto — preferencialmente fora da área pública, pelos mesmos motivos que valem para qualquer framework.
  • Domínio ou subdomínio que vai atender a aplicação.
  • Arquivo de entrada — o arquivo que sobe o servidor da aplicação.

Repare que você não escolhe a porta. Ela é interna e o painel cuida do encaminhamento; a aplicação deve ouvir na porta que o ambiente informa, e não em uma porta fixa escrita no código — porta fixa é a causa clássica de aplicação que sobe e não responde.

Instalar as dependências

O painel costuma oferecer um botão que instala as dependências declaradas no arquivo de manifesto do projeto, dentro do ambiente correto da linguagem. Use esse botão em vez de enviar a pasta de dependências pronta: pacotes com parte compilada precisam ser montados na mesma arquitetura do servidor, e a cópia da sua máquina pode simplesmente não carregar.

Reiniciar depois de cada alteração

Envie os arquivos, instale o que for novo e clique em reiniciar. Se a aplicação não voltar, o log de erro dela é o primeiro lugar a olhar — falha de inicialização aparece ali por extenso, geralmente uma dependência faltando ou uma variável de ambiente não definida.

Os limites da conta valem aqui também

O processo da aplicação consome memória e processador da mesma cota da conta, e conta no total de processos. Aplicação que vaza memória vai bater no limite e ser encerrada, derrubando o site — em processo permanente esse efeito é cumulativo, diferente do PHP, que zera a cada requisição. Vale acompanhar o consumo nos primeiros dias depois de publicar.

Hospedagem gerenciada a partir de R$6,90/mês

Comece agora