Máy chủ và DevOps 93 visualizações

Como agendar reinício automático de uma aplicação Node.js travada

Ver no WHMCS

Como agendar reinício automático de uma aplicação Node.js travada

Olá, viajante do mundo digital! 👋 Se você está aqui, provavelmente já passou pela dor de ver sua aplicação Node.js parada, sem resposta, como se tivesse "dormindo" no servidor. Não se preocupe — isso é comum, especialmente em ambientes de produção. A boa notícia é que com um pequeno truque no sistema, você pode automatizar o reinício quando isso acontecer. E aqui, na GeHost, vamos te ensinar como, passo a passo, com carinho e clareza.

Por que isso acontece?

Aplicações Node.js são poderosas, mas, às vezes, por falhas no código, uso excessivo de memória ou erros não tratados, elas podem travar. Quando isso acontece, o servidor continua rodando, mas sua aplicação não responde. O que fazemos? Reinciamos manualmente… ou melhor, automatizamos o reinício para não precisar ficar de olho 24h por dia.

Dica do Sensei: Nunca deixe uma aplicação travada sem monitoramento. Automatizar o reinício é como ter um assistente que cuida do seu sistema quando você está dormindo.

Passo a passo: Agendando reinício automático

  1. Entre no painel da GeHost pelo endereço painel.gehost.com.br. Use seu usuário e senha (os mesmos que você usa para acessar seu domínio ou e-mail).

    Tela de LOGIN do cPanel com campos Usuário e Senha + botão Log in
  2. Depois de logado, você verá o painel inicial do cPanel. Procure pela seção chamada “Gerenciamento de Processos” ou “Processos”. Se não vir, clique em “Terminal” (em Ferramentas) — é aí que vamos fazer o truque.

    Painel inicial (home) do cPanel com os grupos de ferramentas (E-mail, Arquivos etc.)
  3. Clique em “Terminal” (ou “SSH Access” se disponível). Isso abrirá um terminal direto no servidor.

  4. Use o comando abaixo para verificar se sua aplicação está rodando. Substitua seu-app.js pelo nome real do seu arquivo principal (ex: server.js ou app.js):

    ps aux | grep seu-app.js

    Se aparecer algo como node seu-app.js na lista, a aplicação está rodando. Se não aparecer nada, ela está parada.

  5. Agende um job de reinício automático usando o crontab (um cronômetro do sistema). Digite este comando:

    crontab -e

    Isso abrirá um editor de texto. Se for a primeira vez, talvez apareça uma mensagem sobre escolher um editor. Selecione nano (digite 1 e pressione Enter).

  6. Na tela do editor, insira esta linha para reiniciar a aplicação a cada 15 minutos:

    */15 * * * * /usr/bin/node /caminho/completo/para/seu-app.js

    Quan trọng: Substitua /caminho/completo/para/seu-app.js pelo caminho real da sua aplicação dentro do public_html ou www. Por exemplo: /home/seuusuario/public_html/app.js.

  7. Para salvar, pressione Ctrl + O, depois Enter. Para sair, pressione Ctrl + X.

  8. Pronto! O sistema agora vai tentar reiniciar sua aplicação a cada 15 minutos. Se ela travar, o cron vai rodar o comando novamente, trazendo-a de volta à vida.

Como saber se está funcionando?

Após agendar, você pode testar manualmente:

  • Abra o Terminal no cPanel.
  • Use ps aux | grep seu-app.js para ver se está rodando.
  • Se não estiver, espere 15 minutos e verifique de novo — o cron deve ter reiniciado.

Dica do Sensei: Para evitar que o sistema fique em loop se a aplicação travar constantemente, considere adicionar um arquivo de sinalização (como um tmp/running.lock) para evitar reinícios múltiplos. Mas isso é para quem quer ir além do básico. 😊

Importante: Cuidados e boas práticas

Seu plano de hospedagem na GeHost permite esse tipo de configuração, mas lembre-se:

  • Não abuse do reinício automático. Se a aplicação travar a cada 5 minutos, o problema está no código, não no cron.
  • Use o Terminal com atenção. Comandos errados podem causar problemas.
  • Se precisar de ajuda, nosso suporte está disponível — e já está incluso no seu plano. Basta abrir um ticket no painel.

Conclusão

Reiniciar uma aplicação travada não precisa ser um pesadelo. Com um pouco de atenção e um cronograma simples, você pode manter seu site ou API funcionando, mesmo que a aplicação tenha um dia de "preguiça". Lembre-se: você não está sozinho. A GeHost está aqui com você, sempre.

Se este guia te ajudou, compartilhe com um colega. E se tiver dúvidas, não hesite — o suporte da GeHost é seu aliado.

Com carinho,
Sensei da GeHost
*Grupo: G e Soluções e Eventos LTDA (marca institucional Entexp, entexp.com.br). Dono: Raphael Neves Koga (desde 2015).*

Precisa de Ajuda?

Nossa equipe está pronta para resolver suas dúvidas.