Heim > Die heutigen Krypto-News
bitcoin
bitcoin

$94242.517087 USD 

-1.36%

ethereum
ethereum

$3349.155411 USD 

0.55%

tether
tether

$0.998701 USD 

-0.04%

xrp
xrp

$2.166383 USD 

0.42%

bnb
bnb

$694.260598 USD 

0.36%

solana
solana

$186.083475 USD 

-1.44%

dogecoin
dogecoin

$0.313815 USD 

-0.04%

usd-coin
usd-coin

$0.999905 USD 

0.00%

cardano
cardano

$0.890374 USD 

3.05%

tron
tron

$0.260783 USD 

3.54%

avalanche
avalanche

$37.289202 USD 

-0.94%

toncoin
toncoin

$5.836436 USD 

1.92%

chainlink
chainlink

$22.599568 USD 

-0.88%

shiba-inu
shiba-inu

$0.000022 USD 

0.71%

sui
sui

$4.191186 USD 

-0.50%

Node.js

Was ist Node.js?

Node.js ist eine plattformübergreifende Open-Source-Laufzeitumgebung und ein Framework zum Ausführen von Webanwendungen außerhalb des Browsers des Clients.

Dabei handelt es sich um eine serverseitige Programmiersprache, die vor allem für ereignisgesteuerte Server wie Standard-Websites und Back-End-API-Dienste verwendet wird. Bei der Erstellung ging es jedoch darum, eine Echtzeit-Push-basierte Architektur zu entwickeln. Jeder Browser verfügt über eine eigene JS-Engine, und node.js ist eine davon. Die V8-JavaScript-Engine in Google Chrome wird für Node.js verwendet. Ist es nicht etwas kompliziert?

Im Grunde bedeutet dies, dass ganze Websites auf einem einzigen „Stack“ ausgeführt werden können, sodass Sie sich auf die Erreichung der Geschäftsziele des Projekts konzentrieren können und nicht auf Entwicklung und Wartung.

Da Node.js Open Source ist, kann es kostenlos verwendet werden und wird von einer weltweiten Entwickler-Community kontinuierlich aktualisiert und erweitert.

Ein entscheidender Punkt, den man bei Node.js verstehen sollte, ist, dass es sich tatsächlich weder um ein Framework noch um eine Bibliothek wie bei herkömmlicher Anwendungssoftware handelt, sondern um eine Laufzeitumgebung.

Eine Laufzeitumgebung (auch RTE genannt) ist eine Sammlung von Web-APIs, die ein Entwickler zum Erstellen von Code verwenden kann, sowie eine JavaScript-Engine, die diesen Code analysiert. Dadurch ist es leicht, vielseitig und einfach bereitzustellen, was zur Optimierung und Beschleunigung Ihres Anwendungsprojekts beiträgt.

Die grundlegende Node.js-Architektur

Die Architektur von Node.js macht es bei Programmierern sehr beliebt. Im Gegensatz zu den meisten anderen Laufzeitumgebungen, die Multithread-Verarbeitungsmodelle verwenden, erledigt Node.js alles in einem einzigen Thread.

In Multithread-Verarbeitungskonfigurationen verfügt jeder Server über einen eingeschränkten Thread-Pool, auf den er zugreifen kann. Wenn ein Server daher eine Anfrage erhält, wählt er einen Thread aus dem Pool aus und weist ihn dieser Anfrage zu, um die Verarbeitung abzuwickeln. Die Verarbeitung erfolgt in diesem Szenario synchron und sequentiell, was bedeutet, dass jeweils nur ein Vorgang ausgeführt wird.

Bei der Verwendung mehrerer Threads wird für jede Anfrage ein Thread ausgewählt, bis alle Threads aufgebraucht sind. In diesem Fall muss der Server darauf warten, dass ein Thread, der jetzt zu beschäftigt ist, wieder verfügbar wird. Dies kann zu trägen und ineffizienten Apps führen, was negative Folgen haben kann, die vom Kundenerlebnis bis hin zu Lead-Konvertierungen reichen. Dies ist besonders problematisch, wenn Ihr Programm eine große Anzahl gleichzeitiger Clientanforderungen verarbeiten muss.

Node.js hingegen arbeitet auf einem einzelnen Thread. Der Unterschied zwischen den beiden besteht darin, dass man von Single-Thread-Architekturen erwarten kann, dass sie Ereignisschleifen verwenden, um blockierende Eingabe-/Ausgabeaktivitäten auf nicht blockierende Weise durchzuführen. Machen Sie sich keine Sorgen, wenn Ihnen einer dieser Ausdrücke fremd ist.

Im Prinzip kann ein Single-Thread-Design schneller und effektiver funktionieren und wachsen als Multi-Thread-Konfigurationen. Genau das hatte Ryan Dahl im Sinn, als er Node.js entwickelte, und das ist einer der Gründe, warum es bei Web-App-Entwicklern so beliebt ist.

Beispiele für Anwendungen, die mit Node.js entwickelt wurden

Hier sind einige detailliertere Fallstudien, die Ihnen helfen sollen, die realen Anwendungen und kommerziellen Anwendungen der Technologie zu verstehen.

Netflix

Netflix ist der beliebteste Streaming-Medien- und Video-on-Demand-Dienst der Welt. Es handelt sich um eine datengesteuerte Plattform, die umfangreiche A/B-Tests einsetzt, um ihren über 195 Millionen Abonnenten weltweit ein umfassendes Erlebnis zu bieten.

Die Schwierigkeit bedingter Abhängigkeiten und der App-Skalierbarkeit wird durch die große Anzahl einzigartiger Pakete verschärft, die in jedem Push-Zyklus veröffentlicht werden. Aus diesem Grund entschied sich das Unternehmen für Node.js, das leichtgewichtig und schnell ist. Eines der bedeutendsten Ergebnisse war eine Verkürzung der Ladezeit um 70 %.

LinkedIn

Bei der Umstellung seines mobilen App-Backends von Ruby on Rails auf Node.js vertraute auch LinkedIn, die weltweit größte geschäfts- und beschäftigungsorientierte Social-Networking-Site, auf Node.js.

Obwohl es sich damals noch um eine recht unausgereifte Laufzeitumgebung handelte, erwies es sich als kluge Entscheidung. Die neue App war 2-10 Mal schneller als die vorherige und außerdem recht leicht. Darüber hinaus war die Entwicklungszeit kurz.

NASA

Ja, das ist richtig. Node.js wird auch von der NASA verwendet.

Die Technologie ist bei dieser Anwendung weitaus wichtiger als bei anderen, da sie Leben rettet, indem sie die Sicherheit der Astronauten während ihrer gefährlichen Weltraummissionen gewährleistet.

Nach einem beinahe tödlichen Unfall, der durch ineffiziente Datenspeicherung an mehreren Standorten verursacht wurde, stand die NASA vor der Aufgabe, Daten zu EVA-Raumanzügen in einer einzigen Cloud-Datenbank zu konsolidieren, um die Zugriffszeiten zu minimieren. Das neue Node.js-basierte System reduzierte die Anzahl der Schritte im Prozess von 28 auf 7.

Walmart

Walmart ist der größte Einzelhändler der Welt und dringt in das Internet-Shopping-Geschäft vor. Trotz der damit verbundenen Risiken ist das Unternehmen auf die Arbeit mit Node.js aufgesprungen, einer relativ neuen und äußerst beliebten Technologie.

Auf Kundenseite hat das Unternehmen die mobile App so umgestaltet, dass sie komplexe Funktionen enthält. Walmart lobte Node.js für seine asynchronen I/O- und Single-Threaded-Event-Loop-Architekturen, die es ihm ermöglichten, mehrere gleichzeitige Abfragen zu verwalten.

Vertrauenswürdige Ausführungsumgebungen (TEEs)

Trusted Execution Environments (TEEs) sind sichere Bereiche innerhalb eines Hauptprozessors, die einen geschützten Raum bieten, in dem sensible Codes und Daten ohne Angst vor Manipulation oder Beobachtung durch die Außenwelt ausgeführt werden können.

Menschliche Schlüssel

Menschliche Schlüssel sind kryptografische Schlüssel, die von dem abgeleitet werden, was Sie sind, was Sie wissen oder was Sie haben. Sie werden verwendet, um digitale Vermögenswerte zu sichern, die Privatsphäre zu schützen und auf das dezentrale Web zuzugreifen.

Offene Finanzen (OpenFi)

OpenFi, kurz für „Open Finance“, ist ein Finanzrahmen, der traditionelle Finanzen (TradFi) mit dezentralen Finanzen (DeFi) integriert.

Rollups-as-a-Service (RaaS)

Mit Rollups-as-a-Service (RaaS) können Entwickler ihre eigenen Rollups schnell erstellen und starten. RaaS-Anbieter bieten End-to-End-Lösungen wie Anpassungen des zugrunde liegenden Tech-Stacks, No-Code-Management und benutzerdefinierte Ein-Klick-Integrationen mit der Kerninfrastruktur.

Datenverfügbarkeitsstichprobe (DAS)

Data Availability Sampling (DAS) ist eine Methode, die es dezentralen Anwendungen ermöglicht, die Verfügbarkeit von Blockdaten zu überprüfen, ohne dass jeder Teilnehmer den gesamten Datensatz herunterladen muss.

Mehrfache Datenverfügbarkeit (MultiDA)

Diese Blockchain-Architektur nutzt mehr als einen Datenverfügbarkeitsdienst (Data Availability, DA), um Datenredundanz sicherzustellen.