En octubre de 2022, Node.js lanzó su versión 19. Llegó seis meses después del lanzamiento de Node.js v.18, que presentaba actualizaciones significativas, como el módulo de ejecución de pruebas nativo.
Una característica notable de Node.js 19 es el modo de observación nuevo y experimental. Esto le permite realizar cambios en su servidor sin tener que reiniciarlo.
Antes de Node.js 19, el modo de observación solo era posible con bibliotecas de terceros. Aprenda a usar el modo reloj y explore otras actualizaciones de Node.js en la versión 19.
Nuevo modo de reloj de Node
Node.js 19 presenta el experimental --mirar bandera, que reinicia un servidor Node.js cuando detecta cambios en el archivo especificado. Podría hacer esto previamente usando una biblioteca de terceros llamada nodemonio, pero la actualización elimina la necesidad de una dependencia al agregar su funcionalidad a Node.js.
Para reiniciar su servidor Node.js usando el --mirar bandera, ejecutar el nodo comando con el --mirar indicador seguido del nombre del archivo que desea reiniciar cuando Node detecta cambios.
Por ejemplo, considere este bloque de código como un servidor.js archivo:
// servidor.js
constante expresar = requerir("expresar");
constante aplicación = expreso();
constante PUERTO = 6060;
app.escuchar (PORT, () => consola.registro(`Aplicación escuchando en el puerto: ${PORT}`));
Para ver este archivo en busca de cambios y reiniciar el servidor cuando ocurran, ejecute este comando en su terminal:
nodo --ver servidor
El comando observará su archivo server.js y reiniciará el servidor Node.js cuando detecte cambios realizados en el archivo.
Vale la pena señalar que esta función aún es experimental, lo que significa que puede experimentar problemas al usar el --mirar bandera para reiniciar su servidor.
Otras actualizaciones y correcciones
Otras mejoras y correcciones que vinieron con Node.js 19 incluyen lo siguiente.
HTTP Keep-Alive por defecto
El http/https del módulo mantener viva La opción controla si debe mantener una conexión con un servidor después de haber completado una solicitud. Originalmente, tendría que configurar el mantener viva opción a verdadero a mano. Esta opción le indica al servidor que mantenga la conexión abierta y la reutilice para solicitudes posteriores.
En Node.js 19, el mantener viva La opción se establece en verdadero de forma predeterminada. Esta adición reducirá significativamente la sobrecarga de establecer nuevas conexiones.
Estabilización de la API WebCrypto
La API WebCrypto es la implementación de Node.js de el estándar Web Crypto API. Con Node.js 19, la implementación de WebCrypto ahora es estable, excepto por el Ed25519, Ed448, X25519, y X448 algoritmos
Puede acceder a esta API usando el GlobalThis módulo o el nodo: prefijo que Se presentó Node.js 18 para diferenciar los módulos centrales de Node.js de las bibliotecas de terceros.
Por ejemplo:
// nodo: prefijo
constante cripto = requerir("nodo: cripto");
// globalEsto
constante webcrypt = globalThis.crypto;
Ajustes de resolución de ESM personalizados
Node.js 19 elimina el previamente experimental --experimental-especificador-resolución bandera. Esto proporcionó soporte experimental para ubicar archivos usando especificadores de paquetes, similar a cómo ECMAScript importa módulos.
Node.js eliminó esta marca porque puede replicar su funcionalidad usando cargadores personalizados. Puede usar cargadores personalizados para admitir más formatos de módulos o para procesar más módulos antes de cargarlos, ya que le permiten proporcionar su lógica única para cargar y procesar módulos.
Eliminación de la compatibilidad con DTrace/SystemTap/ETW
DTrace, SystemTap y ETW (Seguimiento de eventos para Windows) son módulos que ofrecen seguimiento dinámico y análisis de programas en ejecución. Originalmente en Node.js, podría usarlos para recopilar datos sobre la actividad de una aplicación, incluidos indicadores de rendimiento, errores y otras posibles ocurrencias en tiempo de ejecución.
En Node.js 19, Node.js eliminó la compatibilidad con DTrace, SystemTap y ETW porque la complejidad que implica mantener estos módulos actualizados aún no vale la pena. Entonces, para priorizar sus recursos, dejaron de apoyarlos.
Actualización a Node.js 19
Node.js 19 presenta varias funciones y mejoras que vale la pena considerar para su aplicación, incluido el nuevo modo de observación, entre otros que se mencionaron anteriormente. Para actualizar a Node.js 19, diríjase al sitio web oficial y descargue la versión actual.