O novo modo de observação do Node.js 19 e outros recursos que você deve conhecer
Em outubro de 2022, o Node.js lançou sua 19ª versão. Ele veio seis meses após o lançamento do Node.js v.18, que apresentava atualizações significativas, como o módulo executor de testes nativo.
Um recurso notável no Node.js 19 é o novo e experimental modo de observação. Isso permite que você faça alterações em seu servidor sem precisar reiniciá-lo.
Antes do Node.js 19, o modo de observação só era possível usando bibliotecas de terceiros. Aprenda a usar o modo de observação e explore outras atualizações do Node.js na versão 19.
Novo modo de observação do nó
O Node.js 19 apresenta o sinalizador experimental –watch , que reinicia um servidor Node.js quando detecta alterações no arquivo especificado. Você poderia fazer isso anteriormente usando uma biblioteca de terceiros chamada nodemon , mas a atualização remove a necessidade de uma dependência adicionando sua funcionalidade ao Node.js.
Para reiniciar seu servidor Node.js usando o sinalizador –watch , execute o comando node com o sinalizador –watch seguido do nome do arquivo que deseja reiniciar quando o Node detectar alterações.
Por exemplo, considere este bloco de código como um arquivo server.js :
// server.js
const express = require("express");
const app = express();
const PORT = 6060;
app.listen(PORT, () => console.log(`App listening on port: ${PORT}`));
Para observar as alterações neste arquivo e reiniciar o servidor quando elas ocorrerem, execute este comando no seu terminal:
node --watch server
O comando observará seu arquivo server.js e reiniciará o servidor Node.js quando detectar alterações feitas no arquivo.
Vale a pena notar que esse recurso ainda é experimental, o que significa que você pode ter problemas ao usar o sinalizador –watch para reiniciar o servidor.
Outras atualizações e correções
Outras melhorias e correções fornecidas com o Node.js 19 incluem o seguinte.
HTTP Keep-Alive por padrão
A opção keepAlive do módulo http/https controla se ele deve manter uma conexão com um servidor após concluir uma solicitação. Originalmente, você teria que definir manualmente a opção keepAlive como true . Esta opção instrui o servidor a manter a conexão aberta e reutilizá-la para solicitações subsequentes.
No Node.js 19, a opção keepAlive é definida como true por padrão. Esta adição reduzirá significativamente a sobrecarga de estabelecer novas conexões.
Estabilização da API WebCrypto
A API WebCrypto é a implementação do Node.js do padrão Web Crypto API . Com o Node.js 19, a implementação do WebCrypto agora é estável, exceto para os algoritmos Ed25519 , Ed448 , X25519 e X448 .
Você pode acessar essa API usando o módulo globalThis ou o prefixo node: que o Node.js 18 introduziu para diferenciar os módulos principais do Node.js de bibliotecas de terceiros.
Por exemplo:
// node: prefix
const crypto = require("node:crypto");
// globalThis
const webcrypt = globalThis.crypto;
Ajustes personalizados de resolução ESM
O Node.js 19 remove o sinalizador experimental –experimental-specificifier-resolution . Isso forneceu suporte experimental para localizar arquivos usando especificadores de pacote, semelhante a como o ECMAScript importa módulos.
O Node.js removeu esse sinalizador porque você pode replicar sua funcionalidade usando carregadores personalizados. Você pode usar carregadores personalizados para oferecer suporte a mais formatos de módulo ou para processar os módulos antes de carregá-los, pois eles permitem que você forneça sua lógica exclusiva para carregar e processar módulos.
Remoção do suporte DTrace/SystemTap/ETW
DTrace, SystemTap e ETW (Event Tracing for Windows) são módulos que oferecem rastreamento dinâmico e análise de programas em execução. Originalmente no Node.js, você poderia usá-los para coletar dados sobre a atividade de um aplicativo, incluindo indicadores de desempenho, erros e outras possíveis ocorrências de tempo de execução.
No Node.js 19, o Node.js removeu o suporte para DTrace, SystemTap e ETW porque a complexidade envolvida em manter e manter esses módulos atualizados ainda não valeu a pena. Então, para priorizar seus recursos, eles abandonaram o suporte a eles.
Atualizando para Node.js 19
O Node.js 19 apresenta vários recursos e melhorias que vale a pena considerar para seu aplicativo, incluindo o novo modo de observação, entre outros discutidos acima. Para atualizar para o Node.js 19, acesse o site oficial e baixe a versão atual.
Deixe um comentário