Pular para o conteúdo principal

❓ Perguntas Frequentes (FAQ) - Node.js

⚙️ O que é o Node.js na plataforma?

O Node.js é o ambiente de execução utilizado para rodar aplicações JavaScript no servidor.
Ele já vem instalado e otimizado na instância, não sendo necessário instalar manualmente.

Versões disponíveis: 16.20.2, 20.x.x, 22.x.x e 24.x.x.

📦 O que é o NPM?

O NPM é o gerenciador de pacotes padrão do Node.js.
Ele já está disponível na instância e deve ser usado para gerenciar dependências do projeto.

🛠️ O que é o PM2?

O PM2 é um gerenciador de processos recomendado para Node.js.
Ele mantém a aplicação em execução em segundo plano, faz restart automático, além de permitir monitorar logs e status.

🔄 O que é o Forever?

O Forever é um gerenciador de processos semelhante ao PM2.
Mantém aplicações Node.js ativas, porém é mais simples e menos completo.

📑 O que é o ecosystem.config.js?

É o arquivo de configuração do PM2, onde se define como a aplicação deve ser executada:

  • Nome
  • Script
  • Ambiente
  • Quantidade de instâncias
🚫 Por que minha aplicação pode não iniciar corretamente?

Motivos comuns:

  • Dependências não instaladas
  • Erros de código na aplicação
  • Conflitos de porta

A análise dos logs ajuda a identificar a causa.

⚠️ O que fazer quando a aplicação cai inesperadamente?

O PM2 ou Forever reiniciam a aplicação automaticamente.
Se o problema persistir, verifique os logs para identificar a causa.

📡 O que significa o erro EADDRINUSE?

Esse erro indica que a porta configurada já está em uso.
É necessário liberar a porta ou alterar para outra disponível.

📂 O que significa "Cannot find module"?

A aplicação está tentando usar uma biblioteca que não está instalada ou não foi encontrada no diretório node_modules.

🛑 O que significa o status “errored” no PM2?

Indica que a aplicação falhou ao iniciar ou parou devido a erro inesperado.
Verifique os logs para identificar a causa.

⚙️ O que é clustering no PM2?

É a execução de múltiplas instâncias da aplicação em paralelo, permitindo melhor aproveitamento de CPU e maior capacidade de atender requisições simultâneas.

✍️ O que significa erro de sintaxe (SyntaxError)?

Esse erro ocorre quando há problema na escrita do código JavaScript, como:

  • Parênteses não fechados
  • Vírgulas faltando
  • Uso incorreto de palavras reservadas
📛 O que significa o erro ReferenceError?

Acontece quando você tenta usar uma variável ou função não declarada ou fora de escopo.
Verifique erros de digitação e se a variável está acessível.

🔁 O que significa "RangeError: Maximum call stack size exceeded"?

Este erro indica que uma função foi chamada recursivamente tantas vezes que a pilha de chamadas estourou o limite.
Geralmente causado por loop infinito em função recursiva.

📑 O que significa "TypeError: Cannot read properties of undefined"?

Ocorre quando você tenta acessar algo em uma variável que tem valor undefined.
Exemplo: obj.propriedade onde obj é undefined.