Server-less Computing

Was ist Server-less Computing?

Vorweg: Natürlich werden Computer-Programme immer noch auf Rechnern, Servern, ausgeführt.

In der Entwicklungshistorie wurden bei Mini-Computern (als Gegensatz zu Großrechnern) zuerst alle Applikationen im Betriebssystem-Kontext ausgeführt. Durch die Einführung von Virtualisierung wurden mehrere Betriebssysteme auf einer Hardware bereitgestellt. Mithilfe von Containern wurde diese Virtualisierung leichtgewichtiger gemacht. Cloud-Computing hat Virtualisierung und Containerisierung in Cloud-Rechenzentren verlagert. Applikationen werden hier immer noch in einem vom Kunden exklusiv gemieteten Kontext ausgeführt.

Server-less Computing geht einen anderen Weg. Der Kunde lädt seine Applikation in die Cloud. Diese wird dort vorgehalten und durch ein Ereignis aufgerufen. Der Cloud-Anbieter führt die Applikation dann aus. Dabei steht der Rechner erst zum Ausführungszeitpunkt fest. Der Kunde zahlt in Abhängigkeit von der Ausführung.

Vorteile

Ich brauche mich gar nicht mehr um die Basis-Maschine, auf der meine Applikation läuft, zu kümmern.

Nachteile

Ich kann nur wenige vom Betreiber zur Verfügung gestellte Programmiersprachen verwenden.

Herausforderungen

Ich brauche eine andere Aufteilung meiner Applikation - eine andere Architektur.

Das Source-Code-Management wird anders.

Ich muss stärker über Ausführungshäufigkeit und Ausführungszeiten nachdenken.

Nutzen für die Agilität

Es wird viel einfacher Prototyping zu betreiben. Ideen können in kürzester Zeit umgesetzt werden.