Heim  >  Artikel  >  Web-Frontend  >  Was ist die Engine von node.js?

Was ist die Engine von node.js?

青灯夜游
青灯夜游Original
2022-03-22 18:25:362821Durchsuche

Die Engine von node.js ist „Chrome V8“. Node.js besteht hauptsächlich aus der Chrome V8-Engine, der Standardbibliothek und lokalen Modulen. Die V8-Engine ist unter anderem für das Parsen und Ausführen von JavaScript-Code verantwortlich. Sie kompiliert JS-Code direkt in nativen Maschinencode und verwendet einen Caching-Mechanismus, um die Leistung zu verbessern .

Was ist die Engine von node.js?

Die Betriebsumgebung dieses Tutorials: Windows7-System, NodeJS-Version 12.19.0, DELL G3-Computer.

Was ist NodeJS?

Node.js ist eine JavaScript-Laufzeitumgebung, die auf der Chrome V8-Engine basiert.

Node.js verwendet ein ereignisgesteuertes, nicht blockierendes I/O-Modell, was es leichtgewichtig und effizient macht.

Einfach ausgedrückt handelt es sich bei Node.js um JavaScript, das auf der Serverseite ausgeführt wird, und JavaScript wird für die Programmierung auf der Serverseite verwendet.

Node.js ist eine Entwicklungsplattform, die die Ausführung von JavaScript auf der Serverseite ermöglicht. Sie erweitert die Reichweite von JavaScript auf die Serverseite und kann mit PHP, JSP, Python und Ruby gleichgestellt werden.

Node.js ist keine unabhängige Sprache. Im Gegensatz zu PHP, JSP, Python, Perl und Ruby, die sowohl Sprachen als auch Plattformen sind, verwendet Node.js JavaScript für die Programmierung und läuft auf der JavaScript-Engine (V8).

Der Aufbau der NodeJS-Entwicklung besteht darin, eine große Anzahl von Paketen von Drittanbietern zu verwenden, die von der NPM-Entwicklungsgemeinschaft bereitgestellt werden, sowie die grundlegende Skriptsprache ECMAScript und eine Reihe von Programmierschnittstellen, die von der Node-Plattform für die Programmierung bereitgestellt werden.

Zusammensetzung von Node.js

Die Laufzeit von Node.js besteht hauptsächlich aus der V8-Engine, der Standardbibliothek und den lokalen Modulen, die die Stärke der Node.js-Funktionen von Grund auf bestimmen.

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.

Zusammenfassung

Die V8-Engine und viele lokale Module sind bereits fertig. Die Hauptaufgabe von Node.js besteht darin, die entsprechenden Module auszuwählen, sie zusammenzufügen und die JavaScript-Schnittstelle zu schreiben.

Natürlich sind nicht alle lokalen Module geeignet. Node.js hat auch mehrere eigene Module geschrieben, der typische Vertreter ist Libuv. Libuv ist das Kern- und grundlegendste Modul von Node.js. Node.js basiert vollständig auf Libuv.

Sie haben vielleicht gehört, dass Node.js eine ereignisbasierte, asynchrone I/O-Architektur mit einem Thread verwendet. Dies ist das größte Merkmal von Node.js und der größte Unterschied zwischen ihm und anderen Skriptsprachen. js Die Fähigkeit wird durch die Verwendung von Libuv erreicht.

Libuv ist so mächtig, dass der Beamte beschlossen hat, es von Node.js zu trennen, es als separate Netzwerkbibliothek zu veröffentlichen und es Open Source und kostenlos zu machen. Mittlerweile erfreut sich Libuv großer Beliebtheit und wird zusammen mit den traditionellen Libevent- und libev-Bibliotheken als die „drei wichtigsten C/C++-Netzwerkbibliotheken“ bezeichnet.

Node.js ist vor allem deshalb bekannt, weil es die V8-Engine und die Libuv-Bibliothek verwendet: Die V8-Engine stellt sicher, dass Node.js effizient läuft, und die Libuv-Bibliothek bietet asynchrone E/A-Funktionen basierend auf der Ereignisschleife.

Zusammenfassung

Node.js ist eine JavaScript-Laufzeitumgebung, die es ermöglicht, JavaScript von der Browserumgebung zu trennen und direkt auf dem Computer auszuführen, wodurch die Verwendung von JavaScript erheblich erweitert wird. Wir sollten JavaScript auf der gleichen Ebene wie andere Programmiersprachen wie Python, Java und Ruby behandeln und es nicht länger als „Gadget“ betrachten.

Lassen Sie uns abschließend die Geschichte von JavaScript und Node.js zusammenfassen:

  • Der Netscape-Browser hat JavaScript-Skripte abgeleitet, die Webseiten-Programmierfunktionen bieten;

  • Der Chrome-Browser hat die V8-Engine abgeleitet, die die JavaScript-Leistung verbessert hat;

  • Die V8-Engine hat Node.js erstellt und die Programmierfunktionen von JavaScript erweitert.

  • Node.js hat die Libuv-Bibliothek abgeleitet und ein hervorragendes Tool für die Netzwerkentwicklung hinzugefügt.

Weitere Informationen zu Knoten finden Sie unter:

nodejs-Tutorial!

Das obige ist der detaillierte Inhalt vonWas ist die Engine von node.js?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn