Der neue Überwachungsmodus von Node.js 19 und andere Funktionen, die Sie kennen sollten

Der neue Überwachungsmodus von Node.js 19 und andere Funktionen, die Sie kennen sollten

Im Oktober 2022 veröffentlichte Node.js seine 19. Version. Es kam sechs Monate nach der Veröffentlichung von Node.js v.18, das bedeutende Upgrades wie das native Testrunner-Modul enthielt.

Ein bemerkenswertes Feature in Node.js 19 ist der neue und experimentelle Überwachungsmodus. Auf diese Weise können Sie Änderungen an Ihrem Server vornehmen, ohne ihn neu starten zu müssen.

Vor Node.js 19 war der Watch-Modus nur mit Bibliotheken von Drittanbietern möglich. Erfahren Sie, wie Sie den Überwachungsmodus verwenden, und entdecken Sie andere Updates für Node.js in Version 19.

Nodes neuer Überwachungsmodus

Node.js 19 führt das experimentelle –watch- Flag ein, das einen Node.js-Server neu startet, wenn er Änderungen in der angegebenen Datei erkennt. Sie konnten dies zuvor mit einer Bibliothek eines Drittanbieters namens nodemon tun , aber das Update beseitigt die Notwendigkeit einer Abhängigkeit, indem es Node.js seine Funktionalität hinzufügt.

Um Ihren Node.js-Server mit dem Flag –watch neu zu starten , führen Sie den Befehl node mit dem Flag –watch gefolgt vom Namen der Datei aus, die Sie neu starten möchten, wenn Node Änderungen erkennt.

Betrachten Sie diesen Codeblock beispielsweise als eine server.js -Datei:

// server.js
const express = require("express");
const app = express();
const PORT = 6060;

app.listen(PORT, () => console.log(`App listening on port: ${PORT}`));

Um diese Datei auf Änderungen zu überwachen und den Server neu zu starten, wenn sie auftreten, führen Sie diesen Befehl auf Ihrem Terminal aus:

node --watch server

Der Befehl überwacht Ihre server.js-Datei und startet den Node.js-Server neu, wenn er Änderungen in der Datei erkennt.

Es ist erwähnenswert, dass diese Funktion noch experimentell ist, was bedeutet, dass Sie Probleme haben können, wenn Sie das Flag –watch verwenden, um Ihren Server neu zu starten.

Andere Upgrades und Fixes

Weitere Verbesserungen und Korrekturen, die mit Node.js 19 geliefert wurden, umfassen die folgenden.

HTTP Keep-Alive standardmäßig

Die keepAlive -Option des http/https -Moduls steuert, ob es eine Verbindung zu einem Server aufrechterhalten soll, nachdem es eine Anfrage abgeschlossen hat. Ursprünglich müssten Sie die Option keepAlive manuell auf true setzen . Diese Option weist den Server an, die Verbindung offen zu halten und für nachfolgende Anfragen wiederzuverwenden.

In Node.js 19 ist die Option keepAlive standardmäßig auf true gesetzt. Diese Hinzufügung wird den Aufwand für den Aufbau neuer Verbindungen erheblich reduzieren.

Stabilisierung der WebCrypto-API

Die WebCrypto-API ist die Node.js-Implementierung des Web-Crypto-API-Standards . Mit Node.js 19 ist die WebCrypto-Implementierung jetzt stabil, mit Ausnahme der Algorithmen Ed25519 , Ed448 , X25519 und X448 .

Sie können auf diese API zugreifen, indem Sie das globalThis -Modul oder das node: -Präfix verwenden , das Node.js 18 eingeführt hat, um Node.js-Kernmodule von Bibliotheken von Drittanbietern zu unterscheiden.

Zum Beispiel:

// node: prefix
const crypto = require("node:crypto");

// globalThis
const webcrypt = globalThis.crypto;

Benutzerdefinierte ESM-Auflösungsanpassungen

Node.js 19 entfernt das zuvor experimentelle Flag –experimental-specifier-resolution . Dies bot experimentelle Unterstützung für das Auffinden von Dateien mithilfe von Paketbezeichnern, ähnlich wie ECMAScript Module importiert.

Node.js hat dieses Flag entfernt, da Sie ihre Funktionalität mit benutzerdefinierten Ladeprogrammen replizieren können. Sie können benutzerdefinierte Ladeprogramme verwenden, um mehr Modulformate zu unterstützen oder Module vor dem Laden weiter zu verarbeiten, da Sie damit Ihre eigene Logik zum Laden und Verarbeiten von Modulen bereitstellen können.

Entfernung der DTrace/SystemTap/ETW-Unterstützung

DTrace, SystemTap und ETW (Event Tracing for Windows) sind Module, die eine dynamische Ablaufverfolgung und Analyse laufender Programme bieten. Ursprünglich in Node.js konnten Sie sie verwenden, um Daten über die Aktivität einer Anwendung zu sammeln, einschließlich Leistungsindikatoren, Fehler und andere mögliche Laufzeitereignisse.

In Node.js 19 hat Node.js die Unterstützung für DTrace, SystemTap und ETW entfernt, da sich die Komplexität, die mit der Wartung und Aktualisierung dieser Module verbunden ist, noch nicht gelohnt hat. Um ihre Ressourcen zu priorisieren, haben sie die Unterstützung für sie eingestellt.

Upgrade auf Node.js 19

Node.js 19 führt verschiedene Funktionen und Verbesserungen ein, die es wert sind, für Ihre Anwendung in Betracht gezogen zu werden, einschließlich des neuen Überwachungsmodus, der unter anderem oben besprochen wurde. Um auf Node.js 19 zu aktualisieren, besuchen Sie die offizielle Website und laden Sie die aktuelle Version herunter.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert