Was ist eigentlich Node.js?

|  (aktualisiert am 31.03.2022)

Node.js ist eine Javascript-Laufzeitumgebung, die sowohl Daten sehr schnell verarbeitet als auch einfach zu skalieren ist. In diesem Artikel erfahrt ihr, was man damit anstellen kann, warum es sich wachsender Beliebtheit erfreut, wo die Stärken liegen und warum ihr vielleicht doch schon mehr Erfahrungen mit Node.js gemacht habt, als ihr denkt. Um Node.js in seiner Gänze zu verstehen, erläutere ich euch auch einige Basics von Javascript. 

Javascript - Grundlage von Node.js

Die Programmiersprache Javascript ermöglicht es dir, deine Website flexibel zu gestalten und Inhalte dynamisch anzupassen. Klassische Anwendungsbeispiele dafür sind "Slider" oder Code-Snippets, die die Größe der Container auf das Endgerät deines Kunden anpassen und damit für eine optimale Darstellung sorgen. Des Weiteren lassen sich etwa Benutzer-Eingaben auf ein bestimmtes Schema überprüfen. Damit kannst du dafür sorgen, dass das E-Mail-Feld nur mit validem Input abgesendet werden darf. Wie in jeder anderen Programmiersprache auch stehen dir Mittel zur Verfügung, um deine Website mit Logiken und Bedingungen zu steuern.

Javascript kann aber noch viel mehr. Du kannst deinen Kunden simple Anwendungen wie einen Liveticker zur Verfügung stellen, aber auch hochkomplexe Anwendungen oder kleine 2D / 3D-Spiele. Google Maps ist ein sehr gutes Beispiel dafür, wie mächtig Javascript ist.

Ich lehne mich mal weit aus dem Fenster und behaupte, dass nahezu jeder Webentwickler bereits Javascript dazu verwendet hat, ein Element des DOM (Document Object Model) mit einem anderen CSS-Style zu versehen oder nachträglich Inhalte in einer Liste einzufügen. Das DOM ist die Schnittstelle zwischen Skripten und den Elementen deiner Website. Alle Bilder, Texte, Tabellen und deren Styles können durch das DOM angesprochen und verändert werden. Durch die Betätigung eines Buttons kann man etwa das Color-Schema vom Light Mode in den Dark Mode versetzen oder ein Menü dynamisch an ein Endgerät anpassen. Javascript wird von deinem Browser auf deinem PC oder deinem Smartphone ausgeführt, nachdem das HTML und CSS geladen wurden – wir sprechen also generell von einer Code Ausführung auf der Client-Seite (auch Frontend genannt). 

So funktioniert Node.js

Das Bequemer geht's nicht Hosting


Agentur-Server
Hosting neu gedacht

Node.js ist eine Laufzeitumgebung für Javascript, die nicht auf eine Host-Anwendung wie einen Webbrowser angewiesen ist. Das heißt, dass man Javascript auch auf Serverseite (auch Backend genannt) ausführen und zur Entwicklung serverseitiger Skripte, Tools und Webapplikationen nutzen kann. Damit wird Javascript auch für Backendentwickler attraktiv, denn für solche Anwendungsgebiete benötigt man sonst Kenntnisse über andere Programmiersprachen, wie z.B. PHP, Python, Ruby oder ASP.NET. 

Mit Node.js möchte man die Webentwicklung vereinheitlichen und bekommt die Möglichkeit, eine Programmiersprache –sowohl im Frontend als auch im Backend – zu verwenden. Dadurch ergeben sich einige Vorteile:

  • Javascript gehört zu den einfacher zu lernenden Sprachen
  • Man kann die gleichen Namenskonventionen im Frontend und Backend verwenden, sodass man eine aufgeräumte und durchgängige Code Basis hat
  • Als Entwickler benötigst du nicht mehr verschiedene Tools zum Entwickeln, sondern kannst die dir bereits bekannten Tools weiternutzen.

Anwendungsbereiche von Node.js

Während Javascript hauptsächlich im Frontend für Manipulationen am DOM verwendet wird, setzt man Node.js vor allem ein, um im Backend Daten entgegenzunehmen, diese in Datenbanken (SQL, MongoDB, ...) abzuspeichern und die verarbeiteten Daten wieder auszuliefern.

Wofür benötige ich denn Backend-Services? Viele Anwendungen im Internet, Apps auf deinem Computer oder Smartphone sind reine Bedienelemente für den Kunden. Die Apps an sich kommunizieren mit den Backend-Services über eine Schnittstelle und tauschen Daten aus. Die eigentliche Arbeit geschieht dabei im Backend, auf Servern im Rechenzentrum oder in der Cloud. Dort werden die Daten entgegengenommen, auf Validität geprüft und in einer Datenbank gespeichert. Je nachdem, um was für einen Service es sich handelt, werden weitere Prozesse angestoßen, etwa E-Mails oder Push-Nachrichten versendet, Workflows gestartet, .... Deine Daten werden verarbeitet und in irgendeiner Form wieder an dich zurückgeschickt beziehungsweise in deiner App dargestellt.

Einsatzgebiete von Node.js

Vorteile von Node.js

Was macht Node.js denn nun so besonders? Zum einen gehört Javascript zu den einfacher zu erlernenden Sprachen und stellt damit eine kleinere Einstiegshürde dar. Des Weiteren ist Node.js hoch skalierbar und ziemlich schnell in der Verarbeitung der Daten. Das liegt unter anderem daran, dass Node.js asynchron und parallel arbeiten kann. Non-Blocking I/O ist hier das Stichwort, denn gestartete Funktionen müssen nicht erst auf die Beendigung einer Aktion warten. Normales Javascript ist eigentlich "single-threaded"und arbeitet Daten sequentiell ab, was bedeutet, dass nur eine Aktion gleichzeitig gestartet werden kann – und wenn diese Aktion bearbeitet wird, warten die restlichen Komponenten auf Fertigstellung. Dafür wird ein asynchrones Event-System geboten, das paralleles Arbeiten ermöglicht, ohne dass man komplexe Multi-Threading-Architekturen einsetzen muss. Die aufrufende Funktion wird bei Node.js mithilfe einer Callback-Funktion über die Beendigung des Prozesses benachrichtigt. In der Zwischenzeit können andere Aufgaben parallel abgearbeitet werden.

Zusätzlich zur Performance wird ein Paket-Manager mitgeliefert (npm - Node Package Manager), der dir eine riesige (wenn nicht sogar die größte) Anzahl an Open-Source Paketen bereitstellt. Sie steht dir zur freien Verfügung stehen und sorgt dafür, dass du das Rad nicht neu erfinden musst. So kannst du direkt mit der Core-Logik deiner Services durchstarten. Mithilfe von npm lassen sich Module samt aller Abhängigkeiten suchen, installieren, aktuell halten und auch wieder löschen.  

Node.js bei mittwald

Unsere Entwickler setzen ebenfalls auf Node.js. Zusammen mit Golang wird Node.js zur Erstellung unserer Backend-Services verwendet. Wenn du Lust hast, deine eigene Node.js App zu bauen und auch dauerhaft zu betreiben, kannst du die Laufzeitumgebung über unseren Softwaremanager bequem zu deinen Projekten hinzubuchen.

Ähnliche Artikel:

Philipp Stranghöner und Michael Worobcuk
Webentwicklung

So funktioniert der dauerhafte Betrieb einer Node.js-App − Mittwald Experten im Gespräch

Eine Node.js-App dauerhaft zu betreiben, ist bei Mittwald kein Hexenwerk. Unsere Experten unterhalten sich darüber, was es dabei zu beachten gilt.

mittwald

Do you speak code? Sieben Programmiersprachen im Überblick

Fabian stellt heute die sieben gängigsten Programmiersprachen vor. Welche passt zu deinen Vorhaben?

Webentwicklung

gRPC – entfernte Prozeduren à la Google

Neues aus der Buzzword-Bingo-Reihe: Lukas erklärt dir was gRPC ist und warum du es nutzen solltest. Mehr Details liest du im Mittwald Blog.

Kommentare

Rüdiger Czieschla Stadt Freiburg am

... und wieder sind 2 Monate verstrichen. Wo ist denn das Problem? Gibt es etwas konkretere Pläne, wann Nodejs unterstützt wird? Es gibt auf unseren Webseiten durch die fehlende Unterstützung v.a. bei Mobilgeräten reichlich unschöne Effekte.

Antworten
Katarina Uphoff am
Hallo Rüdiger,

danke für deine Nachricht. Ich hab gesehen, dass du ein Ticket eröffnet hast und habe gerade mit Christian drüber gesprochen. Er meldet sich heute am späten Nachmittag via Ticket bei dir.

Viele Grüße von

Katarina
Antworten
Roberto Cornice am
Hi
Wie ist denn der aktuelle Stand? Ab wann können wir mit der Unterstützung von node.js auf den Agenturservern rechnen?
Antworten
Tobias Schmidt am
Hallo Roberto,
du kannst Node.JS auf deinem Agenturserver verwenden. Melde dich mit deiner Anfrage gerne beim Kundenservice über das Ticketsystem. Die Kollegen kommen dann auf dich zu und lassen dir die notwendigen Informationen zukommen.

Viele Grüße
Tobi
Antworten
Philipp Stranghöner am
Hallo Rüdiger

Node.js ist ab jetzt für alle Mittwald Kunden verfügbar. Man kann Node.js über den Softwaremanager kostenlos installieren und erhält die Befehle node, npm, npx und yarn auf der Konsole. Möchte man seine Node.js App dauerhaft betreiben, muss man sich das kostenpflichtige Add-on (9 Euro netto monatlich) über den Softwaremanager dazubuchen. 

Viele Grüße Philipp 
Antworten
boehm am
Es ist ja inzwischen wieder einige Zeit vergangen...
gibt es inzwischen ein ungefähres Datum, an dem man mit nodeJS rechnen kann?
Antworten
Katarina Uphoff am
Hey boehm,
stimmt, es ist wieder einige Zeit vergangen - Zeit, in der wir an der Weiterentwicklung unserer Produkte arbeiten. Euch Node.js anzubieten ist einer von vielen Tasks auf unserer Roadmap. Wir haben hier erste Tests gemacht, die uns aber noch nicht zufriedengestellt haben. Daher drehen wir jetzt weitere Runden, bis es so sitzt, dass wir damit zufrieden sind und es euch anbieten können. Und wenn das so weit ist, geben wir euch hier im Blog und auf Social Media Bescheid.
Viele Grüße aus dem Marketing-Team
Antworten
Peter am
Und wieder anderthalb Monate vergangen. Gibt es denn nicht wenigstens einen ungefähren zeitlichen Rahmen?
Eine klarere Kommunikation diesbezüglich wäre wünschenswert, so könnten euch einige Kunden entgehen.
Viele Grüße
Peter
Antworten
Philipp Stranghöner am
Hallo boehm,

das lange warten hat ein Ende ab jetzt ist verfügbar. Man kann Node.js über den Softwaremanager kostenlos installieren und erhält die Befehle node, npm, npx und yarn auf der Konsole. Möchte man seine Node.js App dauerhaft betreiben, muss man sich das kostenpflichtige Add-on (9 Euro netto monatlich) über den Softwaremanager dazubuchen. 

Viele Grüße Philipp 
Antworten
Jörg Westarp am
Moin @Mittwald,
kann man in euren Agenturpaketen denn Node.js nutzen?
Das wäre ein echt guter Grund für einen Wechsel zu euch.
Antworten
Tobias Schmidt am
Hallo Jörg,
momentan noch nicht. Wir arbeiten aber bereits daran und sind in der Testphase. Sobald das Feature verfügbar ist, werden wir das öffentlich kommunizieren. Stay tuned.

Viele Grüße
Tobias
Antworten
Philipp Stranghöner am
Hallo Jörg,

es ist jetzt verfügbar, also auch auf einem Agentur-Server. ;) Man kann sich Node.js mit wenigen Klicks über den Softwaremanager in unserem Kundencenter kostenlos installieren und erhält die Befehle node, npm, npx und yarn auf der Konsole. Möchte man seine Node.js App dauerhaft betreiben, muss man sich das kostenpflichtige Add-on (9 Euro netto monatlich) über den Softwaremanager dazubuchen. 

Wie sieht es mit nun mit einem Wechsel bei dir aus?

Viele Grüße Philipp
Antworten
Matthias am
Ja würde mich auch sehr interessieren...

*push*

;)
Antworten
Anja am
Hallo Jonathan, hallo Matthias,

danke für eure Anfragen. Wir arbeiten immer noch daran und werden unsere Kunden natürlich informieren, sobald es hier etwas Neues gibt.

Viele Grüße

Anja
Antworten
Philipp Stranghöner am
Hallo Matthias

Es ist endlich so weit und Node.js ist ab jetzt für alle Mittwald Kunden verfügbar. Über den Softwaremanager kann man Node.js kostenlos installieren und erhält die Befehle node, npm, npx und yarn auf der Konsole. Möchte man seine Node.js App dauerhaft betreiben, muss man sich das kostenpflichtige Add-on (9 Euro netto monatlich) über den Softwaremanager dazubuchen. 

Viele Grüße Philipp 
Antworten
Jonathan am

Hallo, gibt es schon einen neuen Status zu Nodejs für Kunden? Danke!

Antworten
Philipp Stranghöner am
Hallo Jonathan,

der Status ist nun 100% und Node.js ist ab jetzt verfügbar. ;) Man kann Node.js über den Softwaremanager kostenlos installieren und erhält die Befehle node, npm, npx und yarn auf der Konsole. Möchte man seine Node.js App dauerhaft betreiben, muss man sich das kostenpflichtige Add-on (9 Euro netto monatlich) über den Softwaremanager dazubuchen. 

Viele Grüße Philipp 
Antworten
Anja Koser am
Hallo Stefan,
danke für deine Frage. Wir arbeiten aktuell daran und informieren unsere Kunden, wenn es losgeht.
Viele Grüße
Anja
Antworten
Stefan am

Wann können wir nodejs im softwaremanager zuschalten?

Antworten
Philipp Stranghöner am
Hallo Stefan,

du kannst dir Node.js nun über den Softwaremanager kostenlos installieren und erhältst die Befehle node, npm, npx und yarn auf der Konsole. Wenn du eine Node.js App dauerhaft betreiben möchtest, muss du dir das kostenpflichtige Add-on (9 Euro netto monatlich) über den Softwaremanager dazubuchen. 

Viele Grüße Philipp 
Antworten
Michel Busse am
Klasse Beitrag ??

Fast schon untergegangen ist die Tatsache, dass Node.js nur der Einstiegspunkt in die Vorteile ist, die damit einhergehen. Vor allem die Frameworks, welche auf Node.js basieren bieten hier enorme Möglichkeiten, die anderweitig in der Webentwicklung oft gar nicht umzusetzen sind. Vor allem mit React können Webanwendungen entwickelt werden, die performant, schnell zu entwickeln und grenzenlos in den Möglichkeiten sind. Wir bauen mittlerweile fast alle unserer Software-Produkte unserer Kunden mit React oder verwandten Frameworks. Wer hier eine Beispiel-Anwendung entdecken möchte, wird unter folgendem Link fündig: https://m-to-b.com/projects/Management-Software
Antworten

Kommentar hinzufügen