Hochskalierbare Architekturen mit virtuellen Threads: Welche Applikationen profitieren vom Umstieg?
Die Skalierbarkeit einer Architektur hängt zentral von ihrem Nebenläufigkeitsmodell ab.
Am Beispiel der neuen Virtual Threads in Java sehen wir den Quantensprung durch die Virtualisierung der Betriebssystem-Threads: Waren bis dahin einige Tausend Threads bereits eine Überlast, lassen sich nun ohne Schwierigkeiten viele Hunderttausende Threads nutzen. Aber wann ist das sinnvoll? Welche Architekturen können davon profitieren? Wie hoch ist der erzielbare Performance-Gewinn? Und vor allem: Lohnt sich der Umstieg für Ihr spezifisches System?
Zielpublikum: Architekten, Entwickler und Entscheider, für die Skalierbarkeit ein Requirement ist
Voraussetzungen:Grundkenntnisse einer aktuellen Programmiersprache, Interesse an Nebenläufigkeit und Parallelität
Level: Practicing
Extended Abstract:
Moderne Programmiersprachen wie Java, Kotlin oder Go bieten virtuelle Threads an, die unzählige nebenläufige Ausführungsstränge auf einige wenige Betriebssystem-Threads abbilden.
Am Beispiel der Virtual Threads in Java, die erst 2023 ins JDK eingezogen sind, sehen wir, welcher Quantensprung damit verbunden ist: Waren bis dahin einige Tausend Threads bereits eine Überlast, lassen sich nun ohne Schwierigkeiten viele Hunderttausend Virtual Threads nutzen.
Im Vortrag wird zunächst aus Anwenderperspektive gezeigt, wie massiv sich Skalierbarkeit und Performance durch den Einsatz von Virtual Threads steigern lassen. Dann blicken wir unter die Haube und sehen, mit welchen Mechanismen Virtual Threads realisiert sind. Vor diesem Hintergrund wird herausgearbeitet, wann der Einsatz von Virtual Threads sinnvoll ist, und welche Architekturen und Applikationen davon profitieren können.
Teilnehmer nehmen das Wissen mit nach Hause, ob sich für ihre spezifische Applikation der Umstieg lohnt und was dabei zu beachten ist.
Software-Architekt
Marwan Abu-Khalil ist Software-Architekt in der Siemens AG und unterrichtet leidenschaftlich Software-Architektur und Parallele Programmierung. Er ist regelmäßiger Sprecher auf Software-Konferenzen.
Vortrag Teilen