Nebenläufigkeit in JavaScript (Node.js): Asynchronität, Threads, Parallelität
Nebenläufigkeit in JavaScript (Node.js): Asynchronität, Threads, Parallelität
Zusammenfassung:
Das Buch «Nebenläufigkeit in JavaScript (Node.js)» ist ein praktischer Leitfaden zur Erstellung leistungsstarker, reaktionsschneller und skalierbarer Anwendungen auf der Node.js-Plattform. In der modernen Webentwicklung wirken sich Geschwindigkeit und Effizienz des Servercodes direkt auf die Benutzererfahrung und die Infrastrukturkosten aus. Dieses Buch hilft Ihnen, alle wichtigen Konzepte der nebenläufigen Programmierung zu meistern, von den Grundlagen der Asynchronität bis hin zu fortgeschrittenen Techniken der Mehrthreadigkeit.
Für wen ist dieses Buch:
- JavaScript-Entwickler, die mit Node.js auf die Serverseite wechseln;
- Backend-Ingenieure, die ihre Kenntnisse in der asynchronen Programmierung vertiefen möchten;
- Entwickler, die auf Leistungsprobleme und Blockaden in Node.js gestoßen sind;
- Alle, die verstehen möchten, wie der Event Loop funktioniert und wie man Systemressourcen effektiv nutzt.
Was Sie aus dem Buch lernen werden:
- Wie der Event Loop in Node.js aufgebaut ist und seine Phasen (Timer, I/O-Callbacks, idle, poll, check, close);
- Den Unterschied zwischen synchroner, asynchroner und nebenläufiger Codeausführung;
- Ein tiefes Verständnis von Promises, then/catch-Ketten, statischen Methoden (Promise.all, Promise.race, Promise.allSettled);
- Die korrekte Verwendung von async/await zum Schreiben lesbaren asynchronen Codes;
- Fehlerbehandlung in asynchronen Funktionen und Promises;
- Arbeit mit Streams zur Verarbeitung großer Datenmengen;
- Mehrthreadigkeit mit Worker Threads: Erstellung von Workern, Datenübertragung, gemeinsamer Speicher (SharedArrayBuffer);
- Clustering von Node.js-Anwendungen zur maximalen Auslastung aller CPU-Kerne;
- Entwurfsmuster für nebenläufige Anwendungen: Producer-Consumer, Pub/Sub, Pipeline;
- Profiling und Debugging von asynchronem Code, Suche nach Speicherlecks und Blockaden;
- Sicherheit in mehrthreadigen Anwendungen: Vermeidung von Race Conditions und Deadlocks.
Das Buch ist nach dem Prinzip «vom Einfachen zum Komplexen» aufgebaut: Jedes Kapitel enthält eine theoretische Grundlage, anschauliche Codebeispiele und praktische Aufgaben zur Festigung des Stoffes. Sie lernen nicht nur, asynchronen Code zu schreiben, sondern auch zu verstehen, wie Node.js Aufgaben unter der Haube verwaltet.
Ein besonderer Schwerpunkt liegt auf dem Vergleich der Nebenläufigkeit in Node.js mit anderen Ansätzen (Mehrthreadigkeit in C++/Java, Asynchronität in Python asyncio). Dies hilft Ihnen, das Gesamtbild zu sehen und die richtigen Werkzeuge für jede Aufgabe auszuwählen.
Nach der Lektüre des Buches werden Sie in der Lage sein, hochbelastbare Webserver, Chat-Anwendungen, Dateiverarbeiter und alle anderen Systeme zu erstellen, die eine effiziente Nutzung von CPU- und I/O-Ressourcen erfordern. Sie werden keine Angst mehr vor der «Callback-Hölle» haben und lernen, eine Architektur zu entwerfen, die gegen Blockaden resistent ist.
Das Buch eignet sich sowohl für Anfänger mit grundlegenden JavaScript-Kenntnissen als auch für erfahrene Ingenieure, die ihr Wissen über Nebenläufigkeit in Node.js systematisieren möchten.
Empfehlungen
Clean Code in Kotlin: Ein praktischer Leitfaden zum Schreiben wartbarer Programme
Sicherheit von Kotlin-Anwendungen: Von den Grundlagen bis zu fortgeschrittenen Techniken
JavaScript (Node.js) und Kubernetes: Bereitstellung und Orchestrierung
Schreiben eines Compilers in Go
Tour of Rust
Real-World Next.js