Servidor & DevOps 6 visualizações

Como escolher entre PM2 e systemd para manter uma aplicação Node.js sempre no ar

Ver no WHMCS

Como escolher entre PM2 e systemd para manter sua aplicação Node.js sempre no ar

Olá, viajante da web! Se você está aqui, é porque quer que sua aplicação Node.js fique sempre no ar — como um farol no mar, sempre visível, sempre funcionando. Que bom que você está pensando nisso! 🌟

Na GeHost, você tem poder total sobre seu servidor (dentro do que o plano permite). E quando falamos de manter um app rodando 24h por dia, dois caminhos se abrem: PM2 e systemd. Mas qual escolher?

Calma. Vamos juntos, passo a passo, como um bom Sensei ensina seu aluno. Sem pressa, sem medo.

O que são PM2 e systemd?

Imagine que seu app Node.js é como um carro. Ele precisa estar ligado para funcionar. Mas, se você desligar o carro e sair, ele para. Isso é o que acontece com apps Node.js no servidor: se o processo morre, o app para.

Então, precisamos de um "motorista" que mantenha o carro ligado sempre que possível. Esse "motorista" é o que chamamos de process manager.

  • PM2: é um gerenciador de processos feito especialmente para Node.js. É simples, poderoso e muito popular.
  • systemd: é o sistema padrão de gerenciamento de serviços no Linux. Mais universal, mas um pouco mais complexo.

Então, qual é melhor? Depende do seu nível de experiência e do que você quer.

PM2: o caminho mais fácil para iniciantes

Se você é novo em servidores, ou só quer algo que funcione rápido e sem complicações, PM2 é a escolha certa.

Ele foi feito para Node.js, entende o que seu app precisa, e faz tudo com poucos comandos.

Passo a passo: como usar PM2 (no seu servidor GeHost)

  1. Entre no painel do cliente e acesse o Terminal (SSH) no cPanel.
  2. Instale o PM2 globalmente com o comando:
    npm install -g pm2
  3. Use o PM2 para iniciar seu app:
    pm2 start app.js
    (substitua app.js pelo nome do seu arquivo principal.)
  4. Ative o auto-início ao reiniciar o servidor:
    pm2 startup
    Ele vai te mostrar um comando. Execute-o (ex: sudo env PATH=$PATH:/usr/bin /usr/lib/node_modules/pm2/bin/pm2 startup systemd -u usuario --hp /home/usuario).
  5. Salve a configuração atual:
    pm2 save

Pronto! Seu app agora vai reiniciar automaticamente, mesmo que o servidor reinicie.

Tela inicial do cPanel com os grupos de ferramentas

systemd: o caminho do mestre (para quem quer controle total)

Se você já domina Linux, gosta de entender tudo do sistema, e quer um controle mais profundo sobre seu app, systemd é a escolha mais sólida.

Ele é o sistema oficial do Linux. Funciona com qualquer linguagem, não só Node.js. É mais pesado de configurar, mas mais estável e integrado ao sistema.

Passo a passo: como usar systemd (no seu servidor GeHost)

  1. Abra o terminal no cPanel (como no passo anterior).
  2. Crie um serviço personalizado:
    sudo nano /etc/systemd/system/meuapp.service
  3. Insira o seguinte conteúdo (ajuste o caminho e o nome do arquivo):
    [Unit]
    Description=Meu App Node.js
    After=network.target
    
    [Service]
    Type=simple
    User=seu_usuario
    WorkingDirectory=/home/seu_usuario/public_html
    ExecStart=/usr/bin/node app.js
    Restart=always
    StandardOutput=journal
    StandardError=journal
    
    [Install]
    WantedBy=multi-user.target
        
  4. Salve o arquivo (no Nano: Ctrl + O, depois Enter, depois Ctrl + X).
  5. Ative o serviço:
    sudo systemctl enable meuapp.service
  6. Inicie o serviço:
    sudo systemctl start meuapp.service
  7. Verifique o status:
    sudo systemctl status meuapp.service

Se tudo estiver certo, seu app está rodando e vai reiniciar sozinho após qualquer reinício do servidor.

Então, qual devo escolher?

Veja a tabela que o Sensei preparou para você:

Característica PM2 systemd
Facilidade ✔️ Fácil — ideal para iniciantes 🟡 Mais complexo
Escolha para Node.js ✔️ Especializado — feito para isso ❌ Universal — precisa mais configuração
Controle de reinício ✔️ Automático — com poucos comandos ✔️ Automático — via configuração
Integração com sistema 🟡 Menor — é uma ferramenta externa ✔️ Total — parte do sistema Linux
Recomendação Para você que quer começar rápido Para quem quer dominar o sistema

Conclusão: escolha com coração, não com medo

Se você é novo, vá com o PM2. Ele é como um amigo fiel: simples, confiável, e faz tudo por você.

Se você já tem experiência, ou quer entender o que acontece no fundo do sistema, systemd é o caminho do mestre. Ele te dá o controle total — mas com responsabilidade.

Na GeHost, você tem as duas opções. E não se preocupe: se precisar de ajuda, nosso suporte técnico está aqui para você — mesmo que seu plano tenha 30 dias grátis de apoio após a entrega.

Seu app está no ar? Então você já é um herói da web. 🌐✨

Com carinho,
Sensei da GeHost
— Raphael Neves Koga, dono do grupo G e Soluções e Eventos LTDA (CNPJ: 46.647.904/0001-04)

Precisa de Ajuda?

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