top of page
  • Reto Wittmer

Die Zukunft des Cloud-Computing: Serverless Computing im Fokus

Das digitale Geschehen verlagert sich immer stärker in die Cloud, sei es im geschäftlichen Umfeld oder in privaten Anwendungen. Doch die Fülle an Anbietern und deren Service-Lösungen macht die Unterscheidung oft nicht einfach. Das gilt auch für das aufstrebende Konzept des "Serverless Computing", das in Fachkreisen auch als "Function-as-a-Service" (FaaS) bekannt ist.


Trotz seines Namens bedeutet Serverless Computing nicht, dass es ohne Server auskommt. Im Kern handelt es sich dabei um ein Cloud-Modell, welches es den Benutzern ermöglicht, Anwendungen und Prozesse zu erstellen und auszuführen, ohne direkt mit den zugrundeliegenden Servern interagieren zu müssen. Anders als der Name vermuten lässt, sind Server in einer solchen Cloud-Umgebung vorhanden, aber ihre Bereitstellung, Skalierung und Verwaltung obliegt dem Anbieter.


Damit geht der Serverless-Ansatz einen Schritt weiter als ein Platform-as-a-Service (PaaS)-Modell. Entwickler und Kunden müssen nicht länger Server manuell verwalten. Stattdessen greifen sie über eine API auf Funktionen zu und können Ressourcen nach Bedarf skalieren oder freigeben.


Serverless Computing befreit Entwickler von administrativen Aufgaben und ermöglicht es ihnen, sich voll auf die Entwicklung und Ausführung ihrer Software zu konzentrieren. Hierzu erstellen sie zustandslose Funktionen, die Anweisungen dafür erhalten, wie ihre Programme auf bestimmte Ereignisse reagieren sollen. Dieser Programmcode kann jederzeit in die Cloud-Umgebung hochgeladen und ausgeführt werden.


Die Anbieter von Serverless Computing tragen die Verantwortung dafür, dass die benötigten Ressourcen immer verfügbar sind und die höchstmögliche Ausfallsicherheit gewährleistet ist. Die Abrechnung erfolgt in der Regel nach dem Pay-per-Use-Modell.


Wie funktioniert Serverless Computing?

Das Management der Hardware liegt in den Händen des Anbieters. Die Herausforderung für die Benutzer besteht darin, ihre Software und die dazugehörige Logik nahtlos in die gemieteten Cloud-Strukturen zu integrieren. Der Aufruf dieser Funktionen erfolgt entweder asynchron über Ereignisse oder synchron nach dem traditionellen Client-Server-Modell.


Der Vorteil der asynchronen Methode besteht darin, dass eine zu starke Kopplung der Funktionen vermieden und der Ressourcenbedarf zur Laufzeit gering gehalten werden kann. Als Beispiel könnte eine ereignisbasierte Funktion dienen, bei der beim Hochladen eines Bildes automatisch eine Miniaturansicht generiert wird. Im klassischen Modell müsste der Client stets eine separate Anfrage an den Server senden, um die Funktion zur Erstellung der Miniaturansicht aufzurufen.


Anders als bei Platform-as-a-Service-Infrastrukturen stellt Serverless Computing keine dauerhafte Arbeitsumgebung für die gesamte Laufzeit zur Verfügung. Stattdessen werden die Ressourcen punktuell und in Echtzeit für die Ausführung einzelner Funktionsaufrufe bereitgestellt. Im Hintergrund kommen sowohl physische als auch virtuelle Server zum Einsatz.


Serverless Architektur: Vor- und Nachteile

Obwohl klassische Cloud-Infrastrukturen es den Nutzern ermöglichen, die benötigte Hardware auszulagern, geht dies oft mit erheblichem administrativem Aufwand einher. Serverless Computing hingegen zielt darauf ab, diesen Aufwand auf ein absolutes Minimum zu reduzieren.


Vorteile

  • Skalierung und Verwaltung der benötigten Ressourcen durch den Anbieter

  • Schnelle Bereitstellung der Ressourcen in Echtzeit

  • Kosten werden nur für genutzte Ressourcen berechnet

  • Hohe Fehlertoleranz dank flexibler Hardware-Infrastruktur in den Rechenzentren des Anbieters

Nachteile

  • Der Zugriff auf virtuelle Maschinen, Betriebssysteme oder Laufzeitumgebungen bleibt beschränkt

  • Die Implementierung kann aufwändig sein

  • Es besteht eine hohe Abhängigkeit vom Anbieter

  • Tiefgreifende Analysen von Leistung und Fehlern sind in der Regel nicht möglich

Wo kommt Serverless Computing zum Einsatz?

Serverless Computing findet vor allem Anwendung im kurzlebigen Datenaustausch von Web- und Business-Anwendungen in der Cloud. Es geht weniger um die Verarbeitung ganzer Anwendungen oder umfangreicher Code-Sequenzen, sondern vielmehr um die Verarbeitung einzelner Funktionen beliebiger Anzahl.


Es wird immer häufiger für Serverless Backends verwendet, um das gesamte Backend einer Anwendung in der Cloud zu erstellen und zu betreiben. Des Weiteren eignet sich Serverless-Infrastruktur ideal für die Weiterverarbeitung strukturierter Daten (wie JSON und XML) und unstrukturierter Daten (wie Bilder und Audio). Es ermöglicht auch die Ausführung von Aufgaben nach Zeitplan und die Integration von digitalen Sprachassistenten und Chat-Bots.

14 Ansichten0 Kommentare

Ähnliche Beiträge

Alle ansehen
bottom of page