• IT-Karriere:
  • Services:

Serverless Computing: Mehr Zeit für den Code

Weniger Verwaltungsaufwand und mehr Automatisierung: Viele Entwickler bauen auf fertige Komponenten aus der Cloud, um die eigenen Anwendungen aufzubauen. Beim Serverless Computing verschwinden die benötigten Server unter einer dicken Abstraktionsschicht, was mehr Zeit für den eigenen Code lässt.

Artikel von Valentin Höbel veröffentlicht am
In der Serverless-Cloud ist die Hardware-Konfiguration aus Sicht der Entwickler nicht mehr wichtig.
In der Serverless-Cloud ist die Hardware-Konfiguration aus Sicht der Entwickler nicht mehr wichtig. (Bild: Montage Martin Wolf/Golem.de)

Entwickler, die ihre Anwendungen in einer Cloud-Umgebung unterbringen möchten, können aus einer Vielzahl von Anbietern und Modi wählen. Wer die Möglichkeit hat, nutzt immer häufiger sogenanntes Serverless Computing, oft auch Serverless Infrastructure oder auch Function as a Service (FaaS) genannt. Hinter diesen verwirrenden Begriffen versteckt sich ein Cloud-Computing-Modell, welches die Abstraktion zwischen physikalischer Hardware und dem genutzten Angebot auf die Spitze treibt und dadurch sehr viele Probleme abnimmt.

Die eher klassisch anmutende Nutzungsvariante des Serverless Computing sieht vor, dass Entwickler ihre Anwendungen bei einem Provider hochladen und zur Verfügung gestellte Funktionen oder Module einbetten. Diese sorgen dafür, dass die Aufgaben mit der eigentlichen Workload an den Anbieter ausgelagert werden.

Weitaus fortgeschrittener läuft es ab, wenn die Anwendung komplett auf Basis der zur Verfügung gestellten Funktionen aufgebaut wird. Demnach steuert der Entwickler Code-Schnipsel in einer vom Provider unterstützten Programmiersprache bei, die auf vordefinierte Ereignisse auf eine bestimmte Art und Weise reagieren (Event-driven).

In allen Fällen sind die anbieterseitigen Funktionen in der Regel zustandslos, was theoretisch eine beliebige Skalierung der Drittkomponenten ermöglicht. Für die Nutzung dieser Funktionen ist kein direkter Zugriff auf die Server oder Hardware notwendig, man arbeitet also im übertragenen Sinne ohne Server, also serverless.

Serverless als größtmögliche Abstraktion

Stellenmarkt
  1. Stiftung Kirchliches Rechenzentrum Südwestdeutschland, Eggenstein-Leopoldshafen
  2. Elektrobit Automotive GmbH, Ulm

Die Grenze zwischen Serverless Computing und PaaS (Platform as a Service) ist dabei fließend: Während ersteres Modell typischerweise den Upload von Code vorsieht, der sich nahtlos in eine Art Cloud-Framework einbetten soll, geht man beim Plattformbetrieb davon aus, dass Entwickler vollständige Anwendungen hochladen. Der Anbieter stellt womöglich nach Baukastenprinzip Apps wie Datenbanken oder E-Mail-Server zur Verfügung, womit der Entwickler sich seinen Software-Stack in einer meist grafisch ansprechenden Umgebung zusammenklicken kann. Die eigentliche Funktionalität der Hauptanwendung aber liefert der Entwickler bitteschön selbst: Alle Anwendungen im Stack wollen orchestriert und vom Nutzer administriert sowie bei Bedarf skaliert werden. Entwickler benötigen hierfür sowohl anbieterspezifisches Knowhow als auch Wissen rund um die eingesetzten Tools. Genauso wie beim Serverless Computing bezahlt er meist in verbrauchter Rechenzeit oder in verbrauchten Ressourcen (vCPUs, vRAM, vDisk).

  • Mögliche Anwendung von FaaS laut Alibaba Cloud (Quelle: Alibaba Cloud)
  • Mögliche Anwendung von FaaS laut Alibaba Cloud (Quelle: Alibaba Cloud)
  • Der lange Weg von der Legacy-Anwendung hin zu Microservices und FaaS (Quelle: Swisscom)
  • Abgrenzung IaaS, CaaS, PaaS und FaaS (Quelle: Alibaba Cloud)
  • Logische Architektur von OpenWhisk (Quelle: Apache.org)
Abgrenzung IaaS, CaaS, PaaS und FaaS (Quelle: Alibaba Cloud)

Wer mutig ist und sich gerne mit der Administration von Systemen auseinandersetzt, rollt nicht nur Apps aus wie bei PaaS, sondern verwaltet gleich eine eigene Infrastruktur in der Cloud. Infrastructure as a Service (IaaS) stellt unter anderem gekapselte Teilinfrastrukturen, bestehend aus VMs, Storage und virtuellen Netzen, zur Verfügung. All diese Komponenten wollen aufgesetzt, konfiguriert und miteinander verzahnt werden. Wenn die eigene Anwendung besonders stark frequentiert wird, skaliert der Entwickler die Ressourcen nach oben und setzt die nächsten Systeme auf, die er dann erneut in die bestehende Infrastruktur einbettet. Das eigene Programm läuft auf den zahlreichen VMs, die in der Regel über Ressourcen-Pools (Anzahl vCPUs, vRAM und vDisk insgesamt) abgerechnet werden. Oft ist es dabei egal, ob die verfügbaren Ressourcen genutzt werden - man zahlt immer für den gesamten Pool (oder die aktuellen VMs). Die Verwaltung der IaaS geschieht meist über eine grafische Oberfläche, wobei der Entwickler nur selten um die CLI herumkommt, wenn etwa Komponenten konfiguriert werden müssen.

Als Entwickler wird man durch die Steuerungsoberfläche des Cloud-Anbieters weniger gefordert, man benötigt aber umfangreiches Wissen im Bereich Systemadministration und ist regelmäßig mit der Pflege der Infrastruktur beschäftigt. Sehr erfahrene Cloud-Administratoren nutzen meist Automatisierungswerkzeuge wie Saltstack oder Ansible, um die Betreuung der Infrastruktur etwas weniger zeitintensiv zu gestalten. Der Entwickler hingegen, der möglichst schnell seine Anwendung online bringen möchte, schreckt womöglich vor der Anschaffung des notwendigen Knowhows zurück und setzt deshalb auf die größtmögliche Abstraktion des Serverless Computing.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
Der Pfad in die Serverless Cloud ist holprig 
  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7.  


Anzeige
Top-Angebote
  1. (aktuell u. a. Corsair Scimitar Pro RGB Maus 39,99€)
  2. 99,00€
  3. (u. a. Need for Speed Most Wanted, NfS: The Run, Mass Effect 3, Dragon Age 2, Kingdoms of Amalur...
  4. 649€ mit Gutscheincode PSUPERTECH10

flauschi123 12. Nov 2018

BPM Systeme koennen das seit Jahrzehnten. AWS Stepfunctions sind auch nur eine kleine...

logged_in 09. Nov 2018

Hast Du dich schon mal mit Skalierung auseinandergesetzt? Wo du um Kubernetes nicht umher...

ThomasSV 09. Nov 2018

Seit in irgendeiner (IMO Gartner-) Studie stand, dass man damit irrsinnig Geld spart...


Folgen Sie uns
       


Samsungs 49-Zoll-QLED-Gaming-Monitor - Test

Der Samsung CRG9 ist nicht nur durch sein 32:9-Format beeindruckend. Auch die hohe Bildfrequenz und sehr gute Helligkeit ermöglichen ein sehr immersives Gaming und viel Platz für Multitasking.

Samsungs 49-Zoll-QLED-Gaming-Monitor - Test Video aufrufen
Netzwerke: Warum 5G nicht das bessere Wi-Fi ist
Netzwerke
Warum 5G nicht das bessere Wi-Fi ist

5G ist mit großen Marketing-Versprechungen verbunden. Doch tatsächlich wird hier mit immensem technischem und finanziellem Aufwand überwiegend das umgesetzt, was Wi-Fi bereits kann - ohne dessen Probleme zu lösen.
Eine Analyse von Elektra Wagenrad

  1. Rechenzentren 5G lässt Energiebedarf stark ansteigen
  2. Hamburg Telekom startet 5G in weiterer Großstadt
  3. Campusnetze Bisher nur sechs Anträge auf firmeneigenes 5G-Netz

Weltraumsimulation: Die Star-Citizen-Euphorie ist ansteckend
Weltraumsimulation
Die Star-Citizen-Euphorie ist ansteckend

Jubelnde Massen, ehrliche Entwickler und ein 30 Kilogramm schweres Modell des Javelin-Zerstörers: Die Citizencon 2949 hat gezeigt, wie sehr die Community ihr Star Citizen liebt. Auf der anderen Seite reden Entwickler Klartext, statt Marketing-Floskeln zum Besten zu geben. Das steckt an.
Ein IMHO von Oliver Nickel

  1. Theatres of War angespielt Star Citizen wird zu Battlefield mit Raumschiffen
  2. Star Citizen Mit der Carrack ins neue Sonnensystem
  3. Star Citizen Squadron 42 wird noch einmal verschoben

Staupilot: Der Zulassungsstau löst sich langsam auf
Staupilot
Der Zulassungsstau löst sich langsam auf

Nach jahrelangen Verhandlungen soll es demnächst internationale Zulassungskriterien für hochautomatisierte Autos geben. Bei höheren Automatisierungsgraden strebt die Bundesregierung aber einen nationalen Alleingang an.
Ein Bericht von Friedhelm Greis

  1. San José Bosch und Daimler starten autonomen Taxidienst
  2. Autonomes Fahren Ermittler geben Testfahrerin Hauptschuld an Uber-Unfall
  3. Ermittlungsberichte Wie die Uber-Software den tödlichen Unfall begünstigte

    •  /