Knoten besteht aus: 1. „V8-Engine“, einem JavaScript-Interpreter, der für das Parsen und Ausführen von JavaScript-Code verantwortlich ist; 2. „Lokales Modul“, das viele leistungsstarke Open-Source-Bibliotheken integriert und geschrieben ist „C/C++“ bestimmt die Stärke der Knotenfunktionen aus der untersten Ebene. 3. „Standardbibliothek“.
Die Betriebsumgebung dieses Tutorials: Windows7-System, NodeJS-Version 12.19.0, DELL G3-Computer.
Node.js wurde im Mai 2009 veröffentlicht und von Ryan Dahl entwickelt. Es handelt sich um eine JavaScript-Laufumgebung, die auf der Chrome V8-Engine basiert. Sie verwendet ein ereignisgesteuertes, nicht blockierendes I/O-Modell, um die Ausführung von JavaScript zu ermöglichen serverseitige Entwicklungsplattform, die JavaScript zu einer Skriptsprache macht, die serverseitigen Sprachen wie PHP, Python, Perl und Ruby ebenbürtig ist.
Vor Node.js konnte JavaScript nur im Browser ausgeführt und als Webskript verwendet werden, um der Webseite einige Spezialeffekte hinzuzufügen oder mit dem Server zu kommunizieren. Mit Node.js kann JavaScript vom Browser getrennt und wie andere Programmiersprachen direkt auf dem Computer verwendet werden. Es kann tun und lassen, was es will, und wird nicht mehr durch den Browser eingeschränkt.
Zusammensetzung von Node.js
Node.js besteht hauptsächlich aus V8-Engine, Standardbibliothek und lokalen Modulen. Insbesondere die Anzahl der lokalen Module bestimmt die Stärke der Node.js-Funktionen.
1) V8-Engine
V8-Engine ist der JavaScript-Interpreter, der für das Parsen und Ausführen von JavaScript-Code verantwortlich ist.
Die V8-Engine nutzt viele Technologien der Java Virtual Machine und des C++-Compilers. Sie kompiliert JavaScript-Code direkt in nativen Maschinencode und nutzt einen Caching-Mechanismus, um die Leistung zu verbessern, wodurch JavaScript genauso schnell ausgeführt wird wie Binärprogramme.
2) Lokales Modul
Node.js integriert viele leistungsstarke Open-Source-Bibliotheken, die in der Sprache C/C++ implementiert sind, wie zum Beispiel:
Module | Instructions |
---|---|
libuv | Eine plattformübergreifende, ereignisgesteuerte asynchrone E/A-Bibliothek. Aber libuv ist nicht auf E/A beschränkt, sondern bietet auch Prozessverwaltung, Thread-Pool, Signalverarbeitung, Timer und andere Funktionen. Alles in Linux ist eine Datei-E/A, darunter nicht nur das Lesen und Schreiben von Dateien, sondern auch das Lesen und Schreiben von Datenbanken, die Netzwerkkommunikation (Socket) usw. |
nmp | Node.js-Paketmanager, der Pakete herunterladen, Pakete installieren, Pakete deinstallieren, Pakete aktualisieren, Pakete hochladen usw. kann. |
http_parser | Ein leichter HTTP-Parser, der in der Sprache C geschrieben ist, um die Entwicklung von Webanwendungen zu unterstützen. |
zlib | Nodejs ist ein Datenkomprimierungs-/Dekomprimierungsmodul in Industriequalität und verwendet zlib, um synchrone, asynchrone oder Streaming-Komprimierungs-/Dekomprimierungsschnittstellen zu erstellen. |
OpenSSL | Dieses Modul bietet viele der streng getesteten Verschlüsselungs-/Entschlüsselungsfunktionen, auf die das moderne Web aus Sicherheitsgründen angewiesen ist, wie zum Beispiel das SSL-Protokoll und das https-Protokoll. |
c-ares | Asynchrone DNS-Abfrage- und Parsing-Bibliothek. |
Node.js führt JavaScript-Code direkt auf dem Computer aus und bietet JavaScript leistungsstarke Funktionen, sodass zwischen seinen lokalen Modulen und der Laufzeit im Browser viele große Unterschiede bestehen und fast keine Verbindung besteht. Node.js hat den Browser fast vollständig aufgegeben und eine neue JavaScript-Laufzeitumgebung von Grund auf erstellt.
3) Standardbibliothek
Lokale Module sind in C/C++ geschrieben, und Node.js ist für JavaScript-Entwickler gedacht, daher muss es die C/C++-Schnittstelle des lokalen Moduls kapseln und eine Reihe eleganter JavaScript-Schnittstellen bereitstellen Entwickler und sorgen für die Konsistenz der Schnittstelle auf verschiedenen Plattformen (Betriebssystemen).
Dieser Satz von JavaScript-Schnittstellen ist die Node.js-Standardbibliothek. Ob die Standardbibliothek elegant und leistungsstark ist, bestimmt die Benutzerfreundlichkeit von Node.js und wirkt sich direkt auf die Marktleistung von Node.js aus.
Weitere Informationen zu Knoten finden Sie unter: nodejs-Tutorial! !
Das obige ist der detaillierte Inhalt vonWas sind die Komponenten von node.js?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!