Was ist Serverless Computing?
Serverless Computing ermöglicht die Ausführung von Code ohne Bereitstellung oder Verwaltung von Servern. Bei einer Anfrage startet der Cloud-Anbieter einen Container, führt Ihre Funktion aus und entfernt ihn im Leerlauf. Kaltstarts treten auf, wenn ein neuer Container von Grund auf initialisiert werden muss. Sie zahlen nur für die tatsächliche Ausführungszeit.
Warum ist das wichtig? Serverless-Architektur betreibt moderne Anwendungen von APIs bis zu Datenpipelines. AWS Lambda allein verarbeitet Billionen von Aufrufen pro Monat.
📖 Vertiefung
Analogie 1
Stellen Sie sich traditionelle Server wie den Besitz eines Autos vor – Sie zahlen Versicherung, Benzin und Wartung, unabhängig davon, ob Sie fahren oder nicht. Serverless ist wie ein Taxi rufen: Sie zahlen nur für die Fahrt. Ein Kaltstart wartet auf die Ankunft des Taxis; Ein Warmstart ist, wenn einer bereits vor Ihrer Tür geparkt ist.
Analogie 2
Stellen Sie sich eine Restaurantküche vor, die Köche auf magische Weise heraufbeschwört, wenn Bestellungen eingehen, und sie nach Hause schickt, wenn der Ansturm vorbei ist. Beim Kaltstart wird die Schürze angezogen und die Hände gewaschen; Warmstart bedeutet, dass der Koch bereits am Herd steht. Bereitgestellte Parallelität ist so, als würde man eine Notbesatzung für den Ansturm auf das Abendessen bereithalten.
🎯 Simulator-Tipps
Anfänger
Senden Sie Anfragen und beobachten Sie, wie Container hochgefahren werden (Kaltstart) und dann wiederverwendet werden (Warmstart).
Mittelstufe
Vergleichen Sie die Laufzeiten von Java und Go, um dramatische Kaltstartunterschiede zu erkennen.
Experte
Legen Sie Provisioned Concurrency und VPC Penalty fest, um den Kompromiss zwischen Latenz und Kosten zu optimieren.
📚 Glossar
🏆 Schlüsselpersonen
Tim Wagner (2014)
Leitete als General Manager die Einführung von AWS Lambda und schuf die erste große kommerzielle Serverless-Computing-Plattform, die das FaaS-Paradigma definierte
Werner Vogels (2014)
CTO von Amazon, der sich für ereignisgesteuerte und serverlose Architekturen einsetzte und die Philosophie „Kein Server ist einfacher zu verwalten als kein Server“ populär machte
Kenton Varda (2017)
Erstellte Cloudflare Worker mithilfe von V8-Isolaten anstelle von Containern, ermöglichte Kaltstarts in weniger als einer Millisekunde und definierte serverloses Edge-Computing neu
Eric Jonas (2019)
Forscher der UC Berkeley, Mitautor des einflussreichen Papiers „Cloud Programming Simplified: A Berkeley View on Serverless Computing“, in dem die serverlose Forschungsagenda definiert wird
Guillermo Rauch (2015)
Erstellte Vercel und Next.js, machte die serverlose Bereitstellung für Frontend-Frameworks bekannt und machte serverlose Funktionen für Frontend-Entwickler zugänglich
Joe Emison (2016)
Früher serverloser Evangelist und CTO, der serverlose Architekturen im Unternehmensmaßstab demonstrierte und die Machbarkeit von FaaS über einfache Anwendungsfälle hinaus bewies
Ajay Nair (2019)
AWS Lambda-Produktleiter, der wichtige Funktionen wie bereitgestellte Parallelität, Lambda-Erweiterungen und Container-Image-Unterstützung vorangetrieben hat
🎓 Lernressourcen
- Cloud Programming Simplified: A Berkeley View on Serverless Computing [paper]
Die entscheidende akademische Umfrage zum Serverless Computing, die sein Potenzial und seine Grenzen analysiert, von der UC Berkeley (2019). Identifiziert die wichtigsten Herausforderungen: begrenzte Lebensdauer, E/A-Engpässe, keine eingehenden Verbindungen und Hardware-Heterogenität. - Serverless Computing: One Step Forward, Two Steps Back [paper]
Kritische Analyse der UC Berkeley, die argumentiert, dass serverlose Einschränkungen (Zustandslosigkeit, kurze Dauer, keine direkte Adressierung) es für viele datenzentrierte Workloads ungeeignet machen (CIDR 2019). - Pocket: Elastic Ephemeral Storage for Serverless Analytics [paper]
Stanford-Forschung zur Behebung der serverlosen Speicherlücke mit einem automatisch skalierenden verteilten Datenspeicher, der für kurzlebige Analyseaufgaben optimiert ist (OSDI 2018). - AWS Lambda Documentation [article]
Umfassende Dokumentation für die am weitesten verbreitete serverlose Plattform, einschließlich Ausführungsmodell, Parallelität und Preisdetails - Serverless Framework [article]
Open-Source-Toolkit zum Erstellen und Bereitstellen serverloser Anwendungen in AWS, Azure und GCP mit einer einheitlichen Konfiguration - Datadog State of Serverless [article]
Jährlicher Branchenbericht über Trends bei der serverlosen Einführung, Kaltstart-Benchmarks und Laufzeitpopularität basierend auf Millionen von Lambda-Funktionen