Nebenläufigkeit in Go: Von den Grundlagen bis zu fortgeschrittenen Mustern
Nebenläufigkeit in Go: Von den Grundlagen bis zu fortgeschrittenen Mustern
Zusammenfassung:
Das Buch „Nebenläufigkeit in Go (Golang)“ ist ein umfassender praktischer Leitfaden, der Sie von den grundlegenden Konzepten bis zu komplexen Mustern der Multithread-Programmierung in Go führt. Im Gegensatz zu vielen abstrakten Lehrbüchern legt der Autor den Schwerpunkt auf reale Beispiele, die Analyse typischer Fehler und sofort einsetzbare Lösungen.
Worum geht es in diesem Buch?
Nebenläufigkeit ist eine der Schlüsselfunktionen von Golang, aber ihre falsche Verwendung kann zu schwer auffindbaren Bugs, Speicherlecks und Anwendungsabstürzen führen. Das Buch behandelt Schritt für Schritt:
- Goroutinen – wie sie funktionieren, wie sie sich von Betriebssystem-Threads unterscheiden, wie man ihren Lebenszyklus verwaltet.
- Kanäle – gepufferte und ungepufferte, Fan-In/Fan-Out-Muster, Signalisierung von Beendigungen.
- Synchronisationsprimitive – Mutexe, WaitGroup, Cond, Once, Pool.
- Fortgeschrittene Muster – Pipeline, Worker-Pool, Graceful Shutdown, Kontexte und Timeouts.
- Testen und Debuggen – wie man Tests für nebenläufigen Code schreibt, den Race-Detector und Profiler verwendet.
Für wen ist dieses Buch?
- Anfängende Go-Entwickler, die Nebenläufigkeit ohne Schmerz verstehen wollen.
- Erfahrene Programmierer, die von anderen Sprachen (Java, C#, Python) wechseln – um idiomatisches Go zu erlernen.
- Team-Leads und Architekten, die zuverlässige hochlastige Systeme entwerfen müssen.
Was werden Sie nach der Lektüre wissen?
- Wie man Goroutinen richtig startet und stoppt, ohne „Zombie“-Prozesse zu erzeugen.
- Wie man Deadlocks, Datenrennen und Paniken in Kanälen vermeidet.
- Wie man effiziente Datenverarbeitungspipelines mit Kanälen aufbaut.
- Wie man context für den Abbruch von Operationen und die Übergabe von Metadaten verwendet.
- Wie man skalierbare Webserver und Request-Handler schreibt.
Jedes Kapitel enthält praktische Übungen und Fragen zur Selbstkontrolle. Der Beispielcode ist im Repository verfügbar – Sie können ihn sofort ausführen und experimentieren.
Das Buch eignet sich sowohl zum Selbststudium als auch zur Vorbereitung auf Vorstellungsgespräche: Viele Aufgaben aus echten Go-Interviews basieren auf Themen, die in diesem Leitfaden behandelt werden.
Der Autor – Alexey Zakharov, Senior Backend-Entwickler mit 10 Jahren Erfahrung, von denen er die letzten 5 Jahre ausschließlich in Go programmiert hat. Er hat an Echtzeitsystemen, Microservice-Architekturen und hochlastigen APIs gearbeitet.
Wenn Sie aufhören wollen, Angst vor Nebenläufigkeit zu haben, und beginnen, schnellen, sicheren und wartbaren Code in Go zu schreiben – dann ist dieses Buch für Sie.
Empfehlungen
Testen von PHP-Anwendungen: von Unit-Tests bis CI/CD
Swift-Vorstellungsgespräch (iOS/macOS): 200 Fragen und Antworten
C++ und Microservices: Vom Monolithen zur verteilten Architektur
CakePHP 1.3 Application Development Cookbook
Praktisches PHP 7, MySQL 8 und MariaDB: Erstellung von Web-Datenbanken
Anwendungen mit Spring 5 und Kotlin erstellen