Você saberia identificar um vazamento de memória em sua aplicação @nodejs? 🧵🤯 /1
Como você pode ver no vídeo, vazamentos de memória podem sim acontecer em suas aplicações e provavelmente você só vai descobrir se monitorar e inspecionar seu código ou mesmo se sua aplicação sair do ar por falta de recursos. /2
Usamos os termos Memory Leak ou vazamento de memória para casos como o do vídeo abaixo: uma aplicação reservou memória demais e não conseguiu descartá-la a tempo. /3
Para mim esse termo não deveria ser vazamento de memória e sim algo como sequestro memória 🤣 porque no fim ela "não vazou" mas ficou presa na aplicação para sempre.
Em Node.js temos muitas formas de monitorar aplicações. /4
Você pode contratar ferramentas de terceiros, pode instalar pacotes gratuitos NPM e pode inspecionar a performance manualmente usando o próprio core do Node.js /5
Ultimamente, para análise estática de código, ou seja, clonar o código na minha máquina e inspecionar o código, eu tenho usado o pacote npm #clinicjs, que tem um poderoso arsenal de ferramentas para monitoramento em dev. /6
Para exemplos mais simples, como o do video abaixo, eu uso o pacote #climem, extremamente simples mas que me dá uma ideia do quão ruim a aplicação está em um feedback ágil. /7
E para ambiente de produção, tenho usado o N-Solid, produto da @NodeSource, que analisa em tempo real todo o estado da aplicação, com baixo overhead, que além de memory leaks, também mostra informações sobre CPU e recursos da aplicação. /8
Esse exemplo abaixo foi retirado do meu treinamento #JSExpert, um treinamento focado em te ensinar #JavaScript e Node.js de forma profunda, ensinando sobre performance, gerenciamento de memória e monitoramento a nivel de código!
O segredo para escalar e atualizar aplicações Node.js a qualquer hora do dia (sem medo e sem frescura) 🤯🧵 /1
Vou te mostrar na prática uma série de técnicas para você ter confiança em atualizar suas aplicações ao meio dia, sem aquele medo de DO NADA seus clientes serem desconectados e terem uma péssima experiência com seu software 😎 /2
Com essa dica, quero que você tenha segurança para fazer atualizações de versão ao meio dia, sem aquele medo de interromper a sessão de clientes que estão transacionando em sua aplicação /3