Was ist die Engine von node.js?
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 .
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.
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!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Der nicht blockierende und ereignisgesteuerte Knotendienst hat den Vorteil eines geringen Speicherverbrauchs und eignet sich sehr gut für die Verarbeitung massiver Netzwerkanforderungen. Unter der Voraussetzung massiver Anfragen müssen Probleme im Zusammenhang mit der „Speicherkontrolle“ berücksichtigt werden. 1. Der Garbage-Collection-Mechanismus und die Speicherbeschränkungen von V8 Js wird von der Garbage-Collection-Maschine gesteuert

Dieser Artikel vermittelt Ihnen ein detailliertes Verständnis des Speichers und Garbage Collectors (GC) der NodeJS V8-Engine. Ich hoffe, er wird Ihnen hilfreich sein!

Die Auswahl eines Docker-Images für Node mag trivial erscheinen, aber die Größe und potenziellen Schwachstellen des Images können erhebliche Auswirkungen auf Ihren CI/CD-Prozess und Ihre Sicherheit haben. Wie wählen wir also das beste Node.js-Docker-Image aus?

Das Dateimodul ist eine Kapselung der zugrunde liegenden Dateioperationen, wie z. B. Lesen/Schreiben/Öffnen/Schließen/Löschen von Dateien, Hinzufügen usw. Das größte Merkmal des Dateimoduls besteht darin, dass alle Methoden zwei Versionen von **synchronem** und **bereitstellen. asynchron**, mit Methoden mit dem Suffix sync sind alle Synchronisationsmethoden, und diejenigen ohne sind alle heterogene Methoden.

Wie führt Node.js GC (Garbage Collection) durch? Der folgende Artikel führt Sie durch.

Die Ereignisschleife ist ein grundlegender Bestandteil von Node.js und ermöglicht die asynchrone Programmierung, indem sie sicherstellt, dass der Hauptthread nicht blockiert wird. Das Verständnis der Ereignisschleife ist für die Erstellung effizienter Anwendungen von entscheidender Bedeutung. Der folgende Artikel wird Ihnen ein detailliertes Verständnis der Ereignisschleife in Node vermitteln. Ich hoffe, er wird Ihnen hilfreich sein!

Der Grund, warum der Knoten den Befehl npm nicht verwenden kann, liegt darin, dass die Umgebungsvariablen nicht richtig konfiguriert sind. Die Lösung ist: 1. Öffnen Sie „Systemeigenschaften“ 2. Suchen Sie nach „Umgebungsvariablen“ -> „Systemvariablen“ und bearbeiten Sie dann die Umgebung Variablen; 3. Suchen Sie den Speicherort des NodeJS-Ordners. 4. Klicken Sie auf „OK“.

Wie packe ich die ausführbare Datei von nodejs mit pkg? Im folgenden Artikel erfahren Sie, wie Sie mit pkg ein Node-Projekt in eine ausführbare Datei packen. Ich hoffe, dass er Ihnen weiterhilft!
