
Premonição 6 (Zach Lipovsky, Adam B. Stein, 2025)

Se você já precisou configurar um servidor web, com certeza esbarrou nesses dois: Apache e NGINX.
O Apache é o veterano. Está aí desde 1995, tem uma penca de módulos, roda bem com PHP, Python, Ruby… e permite configurar regras direto em cada pasta com o arquivo .htaccess. Porém, por muito tempo, ele criava um processo ou thread para cada requisição, o que complicava a escalabilidade, especialmente em ambientes de alta carga. Isso melhorou com o módulo mpm_event, que permite uma gestão mais eficiente das conexões, principalmente quando combinado com PHP-FPM. Porém, essa configuração precisa ser feita manualmente para tirar o máximo de proveito…
Já o NGINX (lê-se “engine-x”) nasceu em 2004 com uma missão clara: lidar com milhares de conexões simultâneas. Ele usa uma arquitetura assíncrona, é leve, rápido e excelente pra servir arquivos estáticos, fazer proxy reverso ou balancear carga.
Na prática, o NGINX costuma ser mais performático. O Apache ganha em flexibilidade e compatibilidade com sistemas legados. Muitos projetos usam os dois juntos, num modelo hibrido com NGINX na frente, como proxy reverso, para o Apache, que processa a aplicação.
No fim, a melhor escolha depende do seu cenário, do projeto… e do que você já domina.
Todo dev tem aquele projeto que cresce junto com ele. O meu é o NetView, um sistema de monitoramento de rede que nasceu no início de 2023 pra resolver uma dor bem prática onde eu trabalho, e hoje virou um projeto completo com dashboard em tempo real, CLI, integração com WhatsApp e uma arquitetura modular em Node.js.
Esse texto é um relato técnico (e pessoal) dessa jornada: de um script PHP direto ao ponto até uma aplicação extensível e em produção real. O que aprendi no caminho, os erros que corrigi e as soluções que construí estão aqui.
💡 Todo o código, de todas as versões, está disponível no GitHub
O NetView começou em 2023 com outro nome: VigiaNet. A ideia era simples: ter uma página que mostrasse, de forma visual, o status dos principais equipamentos de rede do hospital: servidores, impressoras, dvr’s, roteadores, etc.
A stack era bem direta:
index.html com Vue.jssetInterval que fazia requisição com Axios a cada 20 segundosdevices.php que fazia ping nos dispositivos e devolvia um JSONMas o detalhe está na lógica. O backend PHP:
ping -n 1 -w 1 (Windows) via exec(), interpretava o retorno e montava um JSON com os status.O frontend Vue.js fazia polling, processava o JSON e criava cards coloridos (verde, vermelho, cinza). Tinha até animação blink pro status offline.

Limitações? Várias:
Mas, pra um projeto que nasceu como um quebra galho, era mais do que funcional. E foi minha porta de entrada pra entender monitoramento de rede.
Com o tempo, surgiu a necessidade de alertas automáticos, via WhatsApp, quando um dispositivo caía. Isso motivou a primeira grande reescrita: sai PHP, entra Node.js, WebSocket e alertas proativos.
Nascia o NetView v2.
A arquitetura ainda era monolítica:
netview_server.js era o único arquivo responsável por:
config/devices.jsonwhatsapp-web.js)O frontend se conectava via WebSocket e recebia atualizações em tempo real, nada mais de polling. O dashboard era dinâmico e imediato. E foi completamente reformulado.


Mas a v2 ainda tinha limitações:
achagrupo.js) pra descobrir o ID do grupo do WhatsApp.Funcionava. Mas adicionar um dispositivo significava editar código manualmente.
A partir da versão v3, veio a grande virada arquitetural. O código ficou mais limpo, testável, modular e o NetView virou um sistema de verdade.
A lógica foi quebrada em módulos:
NetViewServer: orquestrador de tudo
PingService: cuida dos pings com backoff exponencial
DeviceStateManager: gerencia o status e histórico
NotificationManager: decide quando notificar
WhatsAppClient: integra com o WhatsApp
ConfigManager: observa e carrega a config

Essa separação facilita testes, debugging e extensões futuras.
O ping agora tem:

Criei um CLI interativo com readline e chalk que permite configurar tudo sem abrir o código:
$ node server.js --cli
device-add → adicionar novo dispositivo
wa-groups → listar grupos do WhatsApp
wa-set → selecionar o grupo para notificações
logs → ver as ultimas 20 linhas do arquivo de log

Desde que criei o NetView, vez ou outra me perguntam: “Mas o Zabbix já não faz tudo isso?”
Sim, o Zabbix faz muito mais do que o NetView jamais pretendeu fazer. E tá tudo bem! O NetView nunca foi pensado para competir com ferramentas estabelecidas, ele nasceu para resolver uma dor específica de forma rápida e simples.
| Característica | Zabbix | NetView |
|---|---|---|
| Complexidade | Alta | Baixa |
| Setup inicial | Horas | Minutos |
| Interface | Completa, mas densa | Simples e direta |
| Alertas | Configuráveis, múltiplos canais | WhatsApp integrado, basta conectar |
| Extensibilidade | Templates, plugins, APIs | No código |
| Ideal para | Ambientes que precisam de monitoramento robusto, relatórios, SLA | Quem quer algo funcionando rápido, com alertas diretos |
O NetView é mais como um “canivete suíço” para quem precisa de algo funcionando hoje, sem treinamento da equipe ou semanas de configuração. É o projeto que você monta numa tarde e deixa rodando.
Se sua infraestrutura é crítica e você tem tempo para fazer direito, use Zabbix. Se você só quer parar de ficar perguntando “a impressora da recepção tá funcionando?”, o NetView resolve.
O NetView é um reflexo da minha trajetória como dev. Começou resolvendo um problema com um script PHP. Depois virou playground com Node.js. Hoje é um sistema estável, modular, fácil de manter, e cheio de lições no meio do caminho.
É por isso que eu gosto tanto dele. Porque ele cresceu comigo.
O que realmente aprendi
Esse projeto me ensinou muita coisa na prática, não só sobre código, mas sobre evolução de software:
✅ Como organizar sistemas em módulos coesos
✅ CLI com readline e UX de terminal
✅ Lógica de retry com backoff exponencial
✅ WebSocket bidirecional
✅ Integração com APIs não convencionais (WhatsApp Web)
✅ Logs com Winston, histórico com JSONL
✅ Hot reload de arquivos de config
✅ Controle de concorrência com Promises
Mas principalmente: que software bom é software que resolve problemas reais. O NetView não é revolucionário. Não vai mudar o mundo. Mas toda vez que chego e vejo os vários cards no dashboard, sei que aquele script PHP simples de 2023 virou algo útil de verdade.
E talvez seja isso que faz a diferença: não a complexidade do código, mas o problema que ele resolve.
Noah Kalina tá subindo vídeos no estilo long photograph no YouTube — cenas calmas de natureza, contemplativas. 4K. Sem IA. “Dá o play e vai viver.”
O MoodFilme continua simples — e é assim que eu prefiro. Mas por trás, mudei tudo. Refiz a estrutura, refatorei o código, deixei mais leve e fácil de manter.
A interface é a mesma. Fiz só pequenos ajustes. O foco foi deixar a base sólida o suficiente pra poder continuar evoluindo o projeto sem tropeçar em código velho.
O que mudou
/sombrio, por exemplo), e o site dá um alô diferente dependendo do horário — só pra deixar mais pessoal.E o que vem por aí
Com essa base nova, algumas ideias que já estão no radar:
Pra fechar
O MoodFilme é um projeto pessoal. Não tem anúncio, não rastreia ninguém. Só existe pra te ajudar a achar um filme que combine com o seu momento.
Testou e curtiu? Fala comigo no @vitor.fcp. Leio tudo.

Descobri há um tempo o Always Free da Oracle e, olha… é difícil ignorar. Eles oferecem recursos de nuvem de graça e por tempo ilimitado.
São dois tipos de instâncias:
Além disso, você ainda tem 200 GB de armazenamento disponíveis.
Um detalhe importante: todos esses recursos só podem ser criados na home region que você escolhe quando cria sua conta. E essa escolha não dá pra mudar depois, então vale pensar bem antes de confirmar.
No meu caso, nunca consegui criar instâncias ARM, porque vivem esgotadas na região que escolhi. Mas tudo bem: meu foco sempre foi na AMD mesmo, e têm dado conta do recado. Já rodei uns projetinhos meus por lá, sisteminhas web, bot de zap, etc. Tudo funcionando 24/7, sem pagar um centavo.
O painel da Oracle é meio chatinho no começo, tem uma curva de aprendizado, mas nada que alguns tutoriais e tentativa-e-erro não resolvam. Depois que pega o jeito, vira uma baita opção pra manter serviços no ar de forma estável e gratuita.
Se você curte brincar com infra ou quer subir algo leve sem gastar nada, vale a pena testar.
“Sempre foi assim, não vai mudar” essa frase tem um quê de conformismo que me incomoda. Hoje, por acaso, estava pensando nisso e, coincidentemente, acabei encontrando um vídeo do Luíde (tá aí embaixo) em que ele fala justamente sobre por que se recusa a ser pessimista. Me identifiquei bastante com o que ele disse.
O pessimismo/cinismo parece ter dominado as redes sociais, e isso, entre outros fatores, fez meu interesse por Instagram e afins diminuir. Não que minha saída vá fazer diferença no mundo, mas ando preferindo focar mais na minha vida. Tentar estar presente. Lutar contra os devaneios que sempre aparecem.
Enfim, assiste ao vídeo. Vale a pena a reflexão. Além desse novo canal, o Luíde também tem um projeto mais antigo, um podcast chamado Rebobinado, onde já abordou vários temas parecidos com os que tem explorado agora.