AULA 61
MÓDULO 8
infra
⏱ 50 min
Serviços em Produção
PM2: cluster mode, restart automático. Nginx como reverse proxy. Banco gerenciado. Monitoramento e error tracking.
PM2Nginxclusterreverse proxySentryUptimeprodução
Serviços essenciais em produção
Uma API em produção é mais que código Node rodando. Precisa de monitoramento, restart automático, load balancer, banco gerenciado e alertas.
PM2 / systemd
Process manager: restart automático, cluster mode, logs.
Nginx
Reverse proxy, SSL termination, static files, rate limit.
PostgreSQL gerenciado
Neon, Supabase, Railway, RDS. Backups, réplicas, sem gerenciar disco.
Uptime monitoring
BetterStack, Datadog. Alert no Slack quando API cai.
Error tracking
Sentry. Captura exceções com stack trace em produção.
PM2 — process manager
PM2 é o gerenciador de processos mais usado para Node.js. Restart automático, modo cluster (múltiplos cores), logs rotacionados e zero-downtime deploys.
cluster mode
pm2 start app.js -i max usa todos os núcleos da CPU. Node.js é single-thread, mas com cluster, múltiplos processos respondem requisições em paralelo.
javascript
// ecosystem.config.js — configuração PM2 module.exports = { apps: [{ name: 'minha-api', script: './server.js', instances: 'max', // 1 por núcleo de CPU exec_mode: 'cluster', env_production: { NODE_ENV: 'production', PORT: '3000' }, max_memory_restart: '500M', // reinicia se vazar memória error_file: './logs/err.log', out_file: './logs/out.log', log_date_format: 'YYYY-MM-DD HH:mm:ss' }] } # nginx como reverse proxy # server { # listen 443 ssl; # server_name api.minha-empresa.com; # location / { # proxy_pass http://localhost:3000; # proxy_set_header X-Forwarded-Proto $scheme; # proxy_set_header Host $host; # } # }
quiz · aula 61
Teste seus conhecimentos
0/3 respondidas
QUESTÃO 01
O que é o cluster mode do PM2?
QUESTÃO 02
Para que serve o max_memory_restart?
QUESTÃO 03
Por que usar Nginx na frente do Node.js?
0/3