Schubladen in Form von Wolken symbolisieren Clouds
Lesezeit: 3 Min.
Entwicklung

Serverless Computing: Fluch oder Segen?

Das Serverless-System gilt als eine der innovativsten Neuentwicklungen im Bereich cloudbasierter Anwendungen. Es gilt als ressourcenschonend und kosteneffizient. Unter Entwickler/innen wird die Innovation mit Skepsis betrachtet. Serverless Computing grenzt die Freiheit der Programmierer/innen ein, ist die Befürchtung. Was ist dieser Skepsis entgegenzusetzen und wie funktioniert eine Serverless-Lösung überhaupt?

Serverless Computing ist ein neues cloudnatives Entwicklungsmodell. Die Bezeichnung „Serverless“ ist allerdings irreführend. Webseiten ohne Server zu hosten ist ein Unterfangen, dem sicherlich nicht viel Erfolg beschert sein wird. Vielmehr geht es darum, dass beim Serverless-System Aufgaben und Kompetenzen outgesourct werden. Gedacht ist dieses Modell in erster Linie für den kurzlebigen Austausch von Daten innerhalb der Cloud. Der Fokus liegt auf dem Verarbeiten einzelner Funktionen.

Wie funktioniert Serverless Computing?

Das Unternehmen mietet die Cloudstruktur vom Anbieter. Der/die Entwickler:in bindet Software und Funktionen in die gemietete Cloud ein und muss sich um die Verwaltung der Daten nicht weiter kümmern. Anwendungsdaten werden in einem Key/Value-Datenspeicher gesichert. Aufgaben wie die Wartung des Betriebssystems, das Ausführen von Sicherheitsmaßnahmen, Skalierung oder Protokollierung werden gänzlich vom Provider übernommen. Ereignisse können veröffentlicht und anschließend asynchron verarbeitet werden. Auf diese Weise ist es möglich, asynchrone Aufgabenpipelines aufzubauen, ohne Warteschlangen erstellen zu müssen.

Serverless Computing ist eine Weiterentwicklung des Platform-as-a-Service-Modells (PaaS). Der bedeutendste Unterschied liegt darin, dass keine Arbeitsumgebung oder ein vordefinierter Speicherplatz zur Verfügung gestellt wird. Diese Ressourcen werden nur dann abgerufen, wenn sie gebraucht werden. Der Provider ist verantwortlich dafür, dass die Software funktioniert und die benötigten Ressourcen in Echtzeit zur Verfügung stehen. Serverless-Lösungen werden u.a. von AWS (Lambda), Microsoft (Azure Functions), Google (Cloud Functions) und IBM angeboten.

Die Vorteile von Serverless Computing

Ein bedeutender Vorteil vom Serverless-Betrieb ist die hohe Fehlertoleranz. Diese wird dadurch erreicht, dass die flexible Hardwarestruktur des Providers genutzt wird. Ressourcen stehen in Echtzeit zur Verfügung und können flexibel verwaltet werden. Die Skalierung und das Kapazitätsmanagement werden automatisch vom Provider übernommen. Das spart Ressourcen und die Programmierer können mehr Zeit auf das Coden verwenden. Außerdem werden nur die Speicherressourcen in Rechnung gestellt, die tatsächlich verbraucht wurden. Vor allem für größere Unternehmen bedeutet das auf lange Sicht eine beachtliche Kostenersparnis.

Unsere IT-Services für branchenspezifische Anforderungen

Jedes Unternehmen hat individuelle Ansprüche an die Entwicklung und Betreuung von Software. TenMedia bietet maßgeschneiderte Dienstleistungen für alle Branchen.

Unsere IT-Services für branchenspezifische Anforderungen

Die Nachteile von Serverless Computing

Das Implementieren von Serverless-Strukturen ist ein sehr aufwendiger Prozess mit einer hohen Fehlerquote. Tiefgreifende Fehleranalysen sind oft nicht möglich. Das erschwert den Monitoring- und Debugging-Prozess. Software-Entwickler/innen können weniger autonom arbeiten, da sie auf das Betriebssystem oder die Laufzeitumgebung keinen Zugriff mehr haben. Die Serverless-Funktionen lassen sich nur in der Umgebung des Cloud-Anbieters nutzen. Die Entwickler/innen müssen sich also mit dieser Umgebung vertraut machen. Wird der Anbieter gewechselt, kann es passieren, dass sämtliche event-basierten Funktionen neu programmiert werden müssen.

Wo lässt sich Serverless Computing am besten anwenden?

Die Anwendungsmöglichkeiten sind für manche Branchen besser geeignet als für andere. Da der Fokus auf dem Ausführen einzelner Funktionen liegt, bietet sich Serverless Computing für folgende Arbeitsbereiche an:

Time Scheduling

Für zeitplanbasierte Funktionen wie Backups oder das Aufräumen von Datenbanken ist Serverless-Cloud optimal.

Backend-as-a-Service (BaaS)

Unter diesem Begriff versteht man das Programmieren und Betreiben des gesamten Backends in der Cloud.

Virtuelle Assistenten

Aufgrund ihrer Struktur bietet die Serverless-Technik hervorragende Möglichkeiten, um Chat-Bots oder digitale Sprachassistenten zu implementieren.

Weiterverarbeitung von Daten

Egal, ob es sich um strukturierte oder unstrukturierte Daten handelt: Via Serverless Computing lassen sie sich mühelos strukturieren, verschieben, transkodieren oder kombinieren.

Über den Autor
Dietmar
Dietmar
Online Redakteur & Texter

Dietmar studierte Drehbuch an der Deutschen Film- und Fernsehakademie Berlin (DFFB) und Politikwissenschaften an der Freien Universität Berlin. Er arbeitete in verschiedenen Positionen als Consultant, Dramaturg und Regisseur bei Film- und Theaterprojekten. Darüber hinaus verfügt er über jahrelange Erfahrung als Autor in verschiedenen Segmenten wie Kultur, Technik oder Bildung. Bei TenMedia übernimmt er die Erstellung von Online-Content, produziert unseren Podcast und unterstützt uns bei der Erstellung von (Betriebs-)Handbüchern und Tutorials.

Erstellt am Aktualisiert am
Maßgeschneiderte Lösungen für jede Branche

Maßgeschneiderte Lösungen für jede Branche

Wer wissen möchte, wie individuelle Branchensoftware konzipiert und umgesetzt wird, findet in unseren Projektreferenzen praxisnahe Beispiele.

Referenzprojekte entdecken

Aktuelle Themen