PM2 – Gerenciador de Processos para o Node.JS

porLuis Augusto Moretto

PM2 – Gerenciador de Processos para o Node.JS

Mantenha os processos Node.js rodando com o PM2!

PM2 é uma ferramenta para o gerenciamento de processos Node.js.  A ferramenta funciona como um container onde você pode instanciar diversos processos, pausar e remover.

Seu principal cenário de uso é manter uptime perto de 100%.  O gerenciador vem com um balanceador de carga integrado.

Ele permite que você mantenha os aplicativos ativos para sempre, reload  sem tempo de inatividade e facilitando a vida do Devops.
Veja alguns dos benefícios da ferramenta de gerenciamento de processos Node.js

  1. Monitoramento das aplicações
  2. Integração com containers
  3. Hot reload das aplicações
  4. Fácil integração com serviços de deploy contínuo
  5. Logs das aplicações
  6. Facilidade em escalar as aplicações (modo cluster ou fork)

Instalação

A Instalação no Linux é bastante simples pelo comando apt: (existem versões para o Windows e Mac)

sudo npm install -g pm2

Agora, temos o comando pm2 que pode ser chamado de qualquer lugar.

Comandos PM2

Para listar os processo rodando com o PM2 usamos o comando abaixo:

list: mostra todos os processos gerenciados

pm2 list
listagem dos processos node rodando em memória

listagem dos processos node rodando em memória

 

 

 

 

 

Stop parando uma aplicação

Para parar um processo que está rodando basta executar o comando abaixo onde o 0 indica o ID do APP

pm2 stop 0

Start Iniciando uma aplicação

Para iniciar um processo com o pm2 acesse a pasta onde esta o seu script.js e digite na linha de comando

pm2 start script.js --name meu_app

Dicas

O PM2 também fornece um conjunto de métodos úteis para ajudar os desenvolvedores a gerenciar e monitorar os processos do Node.js, como monit, logs, status, etc.

O modo Cluster é um modo especial ao iniciar um aplicativo Node.js, ele inicia vários processos e consultas HTTP / TCP / UDP de balanceamento de carga entre eles. Isso aumenta o desempenho geral (por um fator de x10 em máquinas de 16 núcleos) e confiabilidade.

Grandes empresas como PayPal, Best Buy e IBM utilizam o pelo seu grande poder no gerenciamento e manutenção e aplicações no ambiente de produção.

Consulte o site oficial e o repositório no GitHub, pois tem muita coisa interessante que é possível fazer com o gerenciador.