
Was ist Node.js?
Node.js bringt JavaScript auf den Server und treibt dort Schnittstellen, Datenabgleiche und ganze Backends an. Woher es kommt, was es gut kann und wo seine Grenzen liegen, verständlich erklärt.
- Lesezeit
- 9 Minuten
- Autor
- Samet Akin
- Veröffentlicht
- Kategorie
- Technik erklärt
Was ist Node.js?
Jahrelang lebte JavaScript ausschließlich im Browser. Es machte Menüs auf, prüfte Formulare und lud Inhalte nach, aber auf dem Server hatte es nichts zu suchen. Dort liefen Sprachen wie PHP oder Java. Node.js hat das geändert: Es nimmt die V8-Engine, die auch in Google Chrome JavaScript ausführt, und verpackt sie in ein Programm, das direkt auf dem Rechner läuft. Seitdem kann JavaScript Dateien lesen, mit Datenbanken sprechen und Webserver betreiben.
Wichtig für die Einordnung: Node.js ist keine Programmiersprache und kein Framework. Es ist eine Laufzeitumgebung, also das Stück Software, das JavaScript-Code entgegennimmt und ausführt. Die Sprache bleibt JavaScript, in der Praxis meist TypeScript, das vor dem Start zu JavaScript übersetzt wird. Ein kompletter Webserver ist damit erstaunlich kurz:
Zu Node.js gehört von Anfang an npm, die Paketverwaltung. Über sie lassen sich fertige Bausteine anderer Entwickler ins Projekt holen, vom Datumsformat bis zur kompletten Datenbankanbindung. Mit über zwei Millionen Paketen ist npm die größte Sammlung dieser Art, und praktisch jedes moderne Web-Werkzeug, vom Compiler bis zum Build-System, läuft selbst auf Node.
const { createServer } = require("node:http");
const server = createServer((anfrage, antwort) => {
antwort.end("Hallo aus Node.js");
});
server.listen(3000);
// Ein laufender Webserver, ohne weitere SoftwareWie funktioniert Node.js?
Das Besondere an Node.js ist die Art, wie es wartet. Ein Server verbringt die meiste Zeit nicht mit Rechnen, sondern mit Warten: auf die Datenbank, auf eine Datei, auf die Antwort eines anderen Systems. Viele klassische Server stellen für jede Anfrage einen eigenen Bearbeiter ab, der in dieser Wartezeit nichts tut. Node.js arbeitet anders: Es gibt einen einzigen Ausführungsstrang, der eine Aufgabe anstößt, die Wartezeit aber sofort für die nächste Anfrage nutzt. Sobald die Antwort da ist, macht er an der alten Stelle weiter.
Man kann sich das wie einen einzelnen Kellner vorstellen, der sehr gut organisiert ist. Er nimmt eine Bestellung auf, reicht sie in die Küche und bedient den nächsten Tisch, statt am Tresen zu warten. Solange die Küche das Kochen übernimmt, schafft er erstaunlich viele Tische. Genau deshalb kommt Node.js mit vielen gleichzeitigen Anfragen gut zurecht, ohne viel Arbeitsspeicher zu belegen.
Dieses Modell hat eine Kehrseite, die man kennen muss: Der eine Kellner darf nicht selbst kochen. Braucht eine Aufgabe den Prozessor lange am Stück, etwa das Umrechnen großer Bildstapel, steht der ganze Betrieb, bis sie fertig ist. Für solche Fälle lagert man die Arbeit in eigene Prozesse oder einen getrennten Dienst aus. Für das tägliche Entgegennehmen, Prüfen und Weiterreichen von Daten ist das Modell dagegen wie gemacht.
const [bestand, preise] = await Promise.all([
fetch("https://api.beispiel.de/bestand"),
fetch("https://api.beispiel.de/preise"),
]);
// Beide Anfragen laufen gleichzeitig,
// Node wartet nicht zweimal nacheinanderWozu wird Node.js verwendet?
Node.js sitzt heute überall dort, wo Systeme miteinander sprechen. Es beantwortet Anfragen von Webseiten und Apps, verbindet Programme, die nichts voneinander wissen, und erledigt Aufgaben nach Zeitplan. Typische Einsatzgebiete sind:
- Schnittstellen, über die Webseiten, Apps und fremde Systeme Daten holen und schreiben
- Backends für Webanwendungen wie Portale, Dashboards und interne Werkzeuge
- Abgleiche zwischen Systemen, etwa zwischen Onlineshop und Warenwirtschaft
- Hintergrunddienste, die nachts Berichte erzeugen, Mails verschicken oder Daten aufräumen
- Werkzeuge für die Webentwicklung selbst, denn Compiler und Build-Systeme laufen fast alle auf Node
Bei uns gehört Node.js seit Jahren zum Alltag. Schnittstellen, nächtliche Datenabgleiche und kleine Helferskripte bauen wir damit, weil Server und Oberfläche dann dieselbe Sprache sprechen und sich Typen und Werkzeuge teilen. Ein Beispiel: Ein Händler pflegt Bestände in seiner Warenwirtschaft, der Onlineshop weiß davon nichts. Ein Node-Dienst holt nachts die Zahlen ab, rechnet sie um und schreibt sie in den Shop. Fällt eine Seite aus, sammelt er die Vorgänge und arbeitet sie später ab, statt sie zu verlieren.
Die Geschichte von Node.js
Node.js entstand aus Unzufriedenheit. Der Entwickler Ryan Dahl störte sich daran, wie umständlich Server damals mit vielen gleichzeitigen Verbindungen umgingen, und baute 2009 eine Umgebung, die das Warten zum Grundprinzip macht. Dass er dafür JavaScript wählte, war ein Glücksfall: Die Sprache kannte jeder Webentwickler, und die V8-Engine von Google machte sie gerade schnell genug für den Server. Was als Experiment eines Einzelnen begann, wird heute von der OpenJS Foundation gepflegt, einer Stiftung, hinter der Firmen wie Google und Microsoft stehen.
- Erschienen
- 2009, entwickelt von Ryan Dahl
- Grundlage
- V8-Engine aus Google Chrome
- Gepflegt von
- OpenJS Foundation
- Lizenz
- Quelloffen und kostenlos (MIT)
- Paketverwaltung
- npm, über zwei Millionen Pakete
Vom Experiment zum Serverstandard

Die Vorstellung
Ryan Dahl zeigt Node.js erstmals auf einer Entwicklerkonferenz. Die Idee, JavaScript auf dem Server laufen zu lassen, wirkt auf viele zunächst wie eine Spielerei.
2009
Was Node.js nicht kann
Node.js ist kein Alleskönner, und wer es einsetzt, sollte die Grenzen kennen. Die wichtigsten sind:
- Rechenintensive Aufgaben blockieren den einen Ausführungsstrang: große Bildstapel, Videoumwandlung oder schwere Berechnungen gehören in eigene Dienste oder andere Sprachen
- Node bringt keine Struktur mit: Wie ein Projekt aufgebaut wird, muss ein Framework wie NestJS oder das Team selbst festlegen
- Die Versionspflege ist Pflicht: Langzeitversionen werden rund drei Jahre unterstützt, danach gibt es keine Sicherheitsaktualisierungen mehr
- Die Freiheit von npm ist auch ein Risiko: Wer wahllos Pakete einbaut, holt sich fremden Code ins Projekt, den niemand geprüft hat
Keiner dieser Punkte spricht gegen Node.js, sie beschreiben nur, wofür es gebaut wurde: viele Anfragen entgegennehmen, Daten prüfen und weiterreichen. Wer das im Blick behält, bekommt einen sehr verlässlichen Unterbau.
Node.js oder PHP?
Die häufigste Vergleichsfrage auf dem Server heißt: Node.js oder PHP? Beide sind ausgereift, beide betreiben einen großen Teil des Webs, und beide werden noch lange gepflegt. Die Entscheidung hängt weniger an der Technik als am Umfeld:
- Node.js passt, wenn die Oberfläche ohnehin in JavaScript oder TypeScript entsteht, denn dann teilen sich beide Seiten Sprache, Typen und Werkzeuge
- Node.js liegt vorn, wenn viele Verbindungen gleichzeitig offen bleiben, etwa bei Live-Daten, Chats oder Benachrichtigungen
- PHP passt, wenn günstiges Standard-Webhosting reicht, denn es läuft dort ohne weitere Einrichtung
- PHP ist im Vorteil, wenn das Projekt auf WordPress, Shopware oder einem Framework wie Laravel aufbaut, denn diese Welt ist in PHP zu Hause
Ehrlich gesagt entscheidet oft der Bestand: Wer schon PHP-Systeme betreibt und Leute dafür hat, fährt mit PHP gut. Wer neu startet und eine moderne Weboberfläche plant, landet meist bei Node. Wir setzen beides ein und beraten nach Projekt, nicht nach Vorliebe. Mehr dazu steht auf unserer Seite zur Node.js-Entwicklung.
Node.js aus Kundensicht
Als Auftraggeber sieht man Node.js nie direkt, man spürt es an den Folgekosten. Weil Server und Oberfläche dieselbe Sprache sprechen, braucht es kein zweites Team und keinen Wissensbruch in der Mitte des Projekts. Ein Entwickler, der das Formular baut, versteht auch die Schnittstelle dahinter. Das macht Änderungen günstiger und die Suche nach Dienstleistern leichter, denn JavaScript-Entwickler gibt es wie kaum eine andere Gruppe.
Bedenken sollte man die laufende Pflege. Ein Node-Dienst ist kein Webspace, den man einmal bucht und vergisst: Alle zwei Jahre steht ein Versionswechsel an, und die verwendeten Pakete wollen aktuell gehalten werden. Das ist planbare Routine, wenn sie jemand übernimmt, etwa im Rahmen von Hosting und Wartung. Wer das von Anfang an einrechnet, erlebt keine Überraschungen.
Lohnt sich Node.js noch?
Ja, und zwar auf absehbare Zeit. Node.js ist seit über fünfzehn Jahren in Betrieb, wird von einer Stiftung mit großen Firmen im Rücken gepflegt und bekommt weiter neue Fähigkeiten: TypeScript-Dateien führt es inzwischen direkt aus, viele Werkzeuge, die früher als Paket kamen, sind heute eingebaut. Das ist der Lebenslauf einer Plattform, die bleibt.
Konkurrenz gibt es trotzdem. Alternativen wie Deno und Bun greifen einzelne Schwächen an und treiben damit auch Node selbst voran. Für Auftraggeber ist das eine gute Nachricht: Der Wettbewerb hält die Plattform frisch, und weil alle drei JavaScript ausführen, bleibt der eigene Code auch bei einem späteren Wechsel weitgehend verwendbar. Die sichere Wahl für den Betrieb ist heute Node, und nichts deutet darauf hin, dass sich das bald ändert.
Was Node.js stark macht

Eine Sprache überall
Server und Browser sprechen JavaScript. Typen, Werkzeuge und Wissen gelten auf beiden Seiten, niemand muss umdenken.

Viele Anfragen gleichzeitig
Node wartet nicht, es arbeitet in Wartezeiten weiter. Deshalb bedient ein kleiner Server erstaunlich viele Verbindungen.

Das größte Ökosystem
Über zwei Millionen npm-Pakete decken fast jeden Bedarf ab. Für die meisten Aufgaben gibt es einen erprobten Baustein.

Verbindet fremde Systeme
Warenwirtschaft, Shop, Buchhaltung: Node-Dienste holen Daten ab, rechnen sie um und reichen sie weiter, auch nachts um drei.
Was wir mit Node.js bauen
Node.js ist bei uns der Standard für alles, was im Hintergrund läuft und Systeme verbindet.

Webanwendungen
Portale und interne Werkzeuge mit einem Node-Backend, das Daten prüft, Rechte durchsetzt und Schnittstellen bereitstellt.
KI und Automatisierung
Abläufe, die bisher Handarbeit waren: Daten abholen, umrechnen, weiterreichen, mit Protokoll und Fehlerbehandlung.
Hosting und Wartung
Wir betreiben Node-Dienste, halten Versionen und Pakete aktuell und merken Ausfälle, bevor jemand anruft.





