In diesem Dokument wird die Technologie hinter Serverless Computing erörtert. Es beginnt mit einer Einführung in die Konzepte des Serverless Computing, den Vor- und Nachteilen dieser Technologie und beschreibt, wofür serverlose Anwendungen üblicherweise eingesetzt werden. Am Ende wird der Inhalt dieses Dokuments kurz zusammengefasst und die Frage beantwortet, "wofür man Serverless Computing braucht und wofür es sich eher nicht eignet".
Serverloses Computing ist ein Ausführungsmodell für die Cloud, bei dem nur genau so viel Rechenressourcen und Speicherplatz dynamisch zugewiesen wird, wie zur Ausführung eines Codes benötigt wird. Dieser Vorgang wird auf einem von dem Cloud-Anbieter gewarteten Server ausgeführt. Serverless Computing ist also nicht tatsächlich Serverless. Der Begriff Serverless wird in dem Kontext nur benutzt, da der Cloud- Anbieter, der eine Serverless Computing Struktur hostet, die Bereitstellung und Wartung vollständig übernimmt. Natürlich sind immer noch Server beteiligt, aber nicht eigene, sondern die Server des Anbieters. Aus der Sicht des Entwicklerteams, das den Code schreibt und einsetzt, gibt es keine Server da Sie die Server nicht verwalten müssen und denn Code einfach bei ihrem Provider hochladen.
Inhaltsverzeichnis
2. Einleitung
3. Was ist Serverless Computing?
3.1 Definition und Merkmal
3.1.1 Definition
3.1.2 Merkmale
3.2 Serverless Computing Anbieter
3.2.1 AWS Lambda
3.2.2 Google Functions
3.2.3 Microsoft Azure Functions
4. Vor und Nachteile von Serverless Computing
4.1 Vorteile von Serverless Computing
4.1.1 Einsatz und Wartung
4.1.2 Skalierbarkeit
4.1.3 Green Computing
4.1.4 Kurze Einführungszeit
4.2 Herausforderungen von Serverless Computing
4.2.1 inbegriffene Einschränkungen
4.2.2 Einschränkungen bei der Implementierung
5. Anwendungsmöglichkeiten von Serverless Computing
5.1 Nachrichtengesteuerte Anwendungen
5.2 Single-page Applikation
5.2.1 PhotoVogue
5.2.2 Die Herausforderungen von PhotoVogue
5.2.3 Die Lösung
5.2.4 Die Vorteile
6. Zusammenfassung
7. Fazit
Zielsetzung & Themen
Die Arbeit untersucht das Cloud-Modell "Serverless Computing", um dessen technologische Grundlagen, Vorteile sowie Herausforderungen zu analysieren und praktische Anwendungsszenarien aufzuzeigen, um die Frage zu klären, für welche Einsatzgebiete sich das Modell eignet und wo es an Grenzen stößt.
- Grundlagen von FaaS (Function as a Service) und BaaS (Backend as a Service)
- Vergleich führender Cloud-Anbieter wie AWS, Google Cloud und Microsoft Azure
- Analyse der Vorteile bezüglich Skalierbarkeit, Wartung und Kosten
- Diskussion von Herausforderungen wie Vendor Lock-in und Cold Starts
- Praxisbeispiel der Anwendung bei PhotoVogue
Auszug aus dem Buch
4.2.2.2 Cold Starts
Eines der häufigsten Leistungsprobleme wird als „Cold Start“ bezeichnet. Auf der AWS Lambda Plattform bezieht sich dies auf die Instanziierung des Containers, in dem der Code ausgeführt und der Initialisierung des Codes selbst. Diese langsameren „Cold Start“ treten auf, wenn eine Lambda Funktion zum ersten Mal oder nach einer Änderung der Konfiguration aufgerufen wird, eine Lambda Funktion skaliert, also auf mehrere Instanzen gleichzeitig läuft oder wenn die Funktion seit längerem nicht mehr aufgerufen wurde.
Sobald ein Container instanziiert ist, kann er Events umgehen, ohne denselben Instanziierungs- und Initialisierungsprozess durchlaufen zu müssen. Diese "warmen" Aufrufe der Lambda-Funktion sind viel schneller. Auf der AWS-Lambda-Plattform bleiben regelmäßig verwendete Container stundenlang warm, so dass Kaltstarts in vielen Anwendungen nur selten vorkommen. Bei einer AWS-Lambda Funktion, die mindestens ein Ereignis pro Sekunde verarbeitet, sollten mehr als 99,99% der Ereignisse von einem warmen Container verarbeitet werden.
Der Unterschied zwischen der "kalten" und der "warmen" Leistung von FaaS-Funktionen macht es schwierig, die Leistung konsistent vorherzusagen.
Zusammenfassung der Kapitel
2. Einleitung: Dieses Kapitel stellt das Thema Serverless Computing vor und definiert die Zielsetzung der Arbeit, die Konzepte der Technologie sowie ihre Eignung in der Praxis zu prüfen.
3. Was ist Serverless Computing?: Es wird das Ausführungsmodell erläutert, das hinter Serverless steht, wobei insbesondere auf die Konzepte FaaS und BaaS sowie die marktführenden Anbieter eingegangen wird.
4. Vor und Nachteile von Serverless Computing: Dieses Kapitel beleuchtet die betriebswirtschaftlichen und technischen Vorteile wie automatische Skalierung sowie die kritischen Herausforderungen wie Vendor Lock-in oder Cold Starts.
5. Anwendungsmöglichkeiten von Serverless Computing: Hier werden konkrete Einsatzszenarien wie nachrichtengesteuerte Systeme und Single-page Applikationen am Beispiel von PhotoVogue diskutiert.
6. Zusammenfassung: Die Kernaussagen zur Verwaltungslosigkeit von Servern und die zentralen Definitionskriterien der Technologie werden zusammengefasst.
7. Fazit: Das Fazit bewertet, dass Serverless besonders für Event- und nachrichtenbasierte Anwendungen geeignet ist, jedoch kein Allheilmittel darstellt.
Schlüsselwörter
Serverless Computing, Cloud Computing, FaaS, BaaS, AWS Lambda, Google Functions, Azure Functions, Skalierbarkeit, Microservices, Cold Start, Vendor Lock-in, Event-gesteuert, Webentwicklung, Cloud-Anbieter, IT-Infrastruktur
Häufig gestellte Fragen
Worum geht es in dieser Studienarbeit grundsätzlich?
Die Arbeit analysiert das Cloud-Konzept "Serverless Computing", klärt auf, was dahintersteckt, und untersucht kritisch, für welche Zwecke es sinnvoll ist und wo die Grenzen der Technologie liegen.
Was sind die zentralen Themenfelder der Analyse?
Zu den Schwerpunkten zählen die Definition von Serverless-Konzepten wie FaaS und BaaS, der Vergleich großer Cloud-Anbieter, eine Gegenüberstellung von Vor- und Nachteilen sowie die Untersuchung von praktischen Anwendungsbeispielen.
Welches Ziel verfolgt die Forschungsfrage?
Das primäre Ziel ist es, eine fundierte Entscheidungshilfe zu bieten, für welche Arten von Anwendungen der Umstieg auf eine serverlose Architektur technologisch und wirtschaftlich vorteilhaft ist.
Welche wissenschaftliche Methode liegt der Arbeit zugrunde?
Die Arbeit basiert auf einer Literaturrecherche und der Analyse von technischen Konzepten, Anbietermerkmalen sowie Fallbeispielen, um die theoretischen Aspekte mit praktischen Beobachtungen zu verknüpfen.
Was wird im Hauptteil der Arbeit behandelt?
Der Hauptteil gliedert sich in die technologische Einordnung und Anbietervergleiche, eine detaillierte Diskussion der Vor- und Nachteile (inklusive Herausforderungen wie Cold Starts) sowie die Darstellung von Anwendungsfällen.
Welche Begriffe charakterisieren die Arbeit am besten?
Schlüsselbegriffe sind vor allem Serverless Computing, FaaS, AWS Lambda, Skalierbarkeit, Cold Start und Vendor Lock-in.
Warum ist das Thema "Vendor Lock-in" für Nutzer von Serverless Computing relevant?
Da Serverless-Anwendungen oft eng mit den proprietären Diensten und Schnittstellen eines spezifischen Cloud-Anbieters verzahnt sind, kann ein späterer Wechsel zu einem anderen Anbieter mit hohem Aufwand und hohen Kosten verbunden sein.
Was ist ein "Cold Start" bei AWS Lambda?
Ein Cold Start bezeichnet die Latenzzeit, die entsteht, wenn eine Funktion zum ersten Mal oder nach längerer Inaktivität aufgerufen wird, da erst ein neuer Container initialisiert werden muss.
- Arbeit zitieren
- Vanessa Kraiss (Autor:in), 2020, Serverless Computing. Wofür braucht man das und wofür eignet es sich eher nicht?, München, GRIN Verlag, https://www.hausarbeiten.de/document/983504