X

Neuste Trends, Tipps, Strategien &
Events rund um das Thema Cloud

FaaS - Function as a Service - Was Sie wissen sollten

Cloud Computing bietet für Großunternehmen inzwischen ebenso wie für Startups oder kleinere Organisationen interessante Möglichkeiten, um Services, Applikationen und Kapazitäten auszulagern. Damit lassen sich Entwicklungszeiten für Produkte (auch Apps) und Dienstleistungen verkürzen, Kosten sparen, umfangreichere Daten analysieren – kurz: Viele Bereiche der IT werden effizienter, schneller und kostengünstiger.

Was ist Function as a Service (FaaS)?

 

Function as a Service ist eine Kategorie der Cloud Computing Services und liefert eine Plattform, auf der sich bestimmte Funktionalitäten von Anwendungen entwickeln, ausführen und verwalten lassen. Dabei entfällt der komplexe Aufwand, die Infrastruktur von Grund auf zu errichten und längerfristig zu betreiben. Wie andere Cloud Services wird auch FaaS angemietet; abgerechnet wird exakt nach Verbrauch und nach genutzter Infrastruktur.

 

Die bekanntesten Cloud Services beziehen sich auf Software (SaaS), Infrastruktur (IaaS) und Plattformen (PaaS). Eine weitere clevere Möglichkeit des Cloud Computings ist Function as a Service (FaaS).

Bei dieser Kategorie des Cloud Computing erfolgt die Abrechnung exakt nach Verbrauch und genutzter Infrastruktur. Bei Nichtnutzung heruntergefahren werden und es entstehen keine Kosten mehr. Außerdem entfallen Aufwände für Instanziierung und Instandhaltung von Infrastruktur inklusive Räume, und das Personal wird entlastet.

Die Wirtschaftlichkeit sollte jedoch stets je nach tatsächlichem Nutzen des FaaS-Systems beurteilt werden. Erwähnenswert ist, dass Applikations-Entwicklungen auf einer FaaS-Plattform nur eine der Möglichkeiten einer “Serverless”-Architektur darstellen.

Function as a service vs platform as a service

Anwendungshosting ist mit FaaS oder PaaS möglich. Hier sind die Unterschiede:

Bei Platform as a Service (PaaS) ist der Nutzer, wie bei FaaS auch, von der Verantwortung befreit, sich um das Managen der Ressourcen zu kümmern. PaaS und FaaS unterscheiden sich jedoch grundlegend in ihrer Architektur, was wiederum die Skalierung beeinflusst. Bei den meisten PaaS-Systemen laufen auf dem System stets mindestens ein Serverprozess und (selbst bei Autoskalierung) eine Vielzahl länger laufender Prozesse. Diese werden auf derselben Maschine hinzugefügt oder wieder entfernt. Für den Entwickler bedeutet dies ein recht offensichtliches Problem hinsichtlich der Skalierung.

Bei FaaS starten die Funktionen innerhalb von Millisekunden, um so das Handling individueller Requests zu ermöglichen. Bei PaaS-Systemen hingegen gibt es typischerweise einen Application Thread, der über einen längeren Zeitraum hinweg läuft und verschiedene Requests abhandelt.

Das macht sich nicht zuletzt auch finanziell bemerkbar. Denn wo FaaS-Services pro Ausführungszeit der Funktion abrechnen, tun PaaS-Services das für die Laufzeit des Threads, in dem die Serverapplikation läuft. Anders ausgedrückt: Ein FaaS-Service kostet, wenn er aufgerufen wird, pro Funktionsaufruf – ein PaaS-Service dagegen berechnet nach den auf der Plattform in Anspruch genommenen Ressourcen. Eine FaaS-Plattform ist in diesem Sinne eine Serverless-Laufzeitumgebung, die Applikationslogiken ausführt, aber keine Daten speichert.

Function as a service vs serverless

Serverless-Computing ist Betrieb bei Bedarf. Der Cloud-Provider teilt dabei die Maschinenressourcen dynamisch auf. Der Begriff “serverless” lässt vermuten, dass keine Server mehr benötigt werden, sie sind aber natürlich auch weiterhin unerlässlich. “Serverless” bedeutet lediglich, dass das Server-Management und die Kapazitätsplanung für Entwickler oder Anwender gar nicht wahrnehmbar sind. Die Abrechnung von Serverless-Systemen erfolgt anhand der tatsächlich verwendeten Ressourcen, die eine Applikation benötigt. Hier geht der Trend weg von bereits im Voraus erworbenen Kapazitätseinheiten.

Serverless-Code kann in Verbindung mit traditionell "deploytem" Code angewandt werden, etwa wie bei Microservices. Alternativ können Applikationen auch komplett serverfrei entwickelt werden und keinerlei provisionierte Server mehr ansprechen.

Den Begriff FaaS hat Iron.IO bereits im Jahre 2011 verwendet. Das hauseigene Produkt von Oracle trägt den Namen Project Fn. Bei Project Fn handelt es sich um eine container-native und Apache-2.0-lizenzierte Serverless-Computing-Plattform. Sie kann vom Nutzer in der Cloud ebenso wie im eigenen Datacenter betrieben werden. Der Unterschied zu Produkten der zahlreichen konkurrierenden Hersteller ist, dass deren FaaS-Systeme sich nur in der jeweils zugehörigen Cloud-Umgebung betreiben lassen.

Mit Function as a Service (FaaS) finden Unternehmen einen cleveren Cloud-Service, der die IT effizienter, schneller und kostengünstiger macht. Die “serverless”-Lösung Oracle ProjectFn stellt bedarfsgerecht nur bestimmte Funktionen von Anwendungen bereit – und nur deren Gebrauch wird berechnet.

FaaS und Cloud Computing in der Zukunft

Wer hätte gedacht, dass Cloud Computing ein so großes Thema wird? Der Fokus wandert immer weiter ab von innerbetrieblichen Serverräumen und Infrastruktur, während Cloud-Produkte und -Services immer weiter ausgebaut und angepasst werden. Mittlerweile gibt es sowohl für Kleinbetriebe als auch internationale Großkonzerne passende Leistungs- und Preisangebote. Je nach Anwendungsfall lassen sich die Services anpassen, und bezahlt wird nur noch, was tatsächlich benötigt und (je nach Modell) auch genutzt wird.

Hochentwickelte Produkte wie Projekt Fn erlauben dem Nutzer außerdem zunehmend Eingriffe in die Funktionen. Produkte bzw. Services werden also zunehmend maßgeschneidert und effizienter. Automatisierte Tests, die mit Versionierung, Staging und Aliasing arbeiten, ermöglichen Integrationstests direkt in der Cloud – ein ganz anderer Ansatz als das häufig noch manuelle Testing im eigenen Datencenter.

Sicherlich werden Provider auch Support bei der Umsetzung ihrer Produkte leisten. Welche Produkte sinnvoll und in welcher Art und Weise für das Unternehmen nutzbar sind, darüber sollte sich aber jeder Betrieb selbst im Klaren sein. Von Cloud Computing kann letztlich jeder profitieren. Die Komplexität der Anwendung dieser Technologien entsteht erst durch deren Komposition. Treten Fehler auf, ist es zunächst nicht trivial, diese zu lösen. Auch deshalb gilt es, Fehler möglichst im Voraus zu vermeiden.

Am Ball bleiben und bestenfalls unter den Ersten mitspielen

Hilfreich ist dabei, dass es schon heute eine stetig wachsende Online-Community gibt, die sich mit Serverless-Computing beschäftigt und Unterstützung bieten kann. Projekt Fn beispielsweise ist inklusive all seiner Komponenten eine Open-Source-Software. Der Code sowie eine Vielzahl von Tutorials lassen sich auf GitHub abrufen und ermöglichen so einen einfachen Einstieg.

Als Vorreiter werden Sie den größten Nutzen aus modernen Technologien ziehen. Mit Sicherheit finden Sie in der nahen Zukunft auch für Ihr Unternehmen einen sinnvollen Anwendungsfall für FaaS.

Klar ist: Wie bei jedem Wandel in der Technologie muss Wissen aufgebaut werden. Wer fortschrittlich arbeiten will, sollte – versteht sich! – außerdem nostalgiefrei gegenüber alten Denkweisen und offen für Neues sein.

 

Testen Sie Cloud-Computing doch einfach einmal selbst:

Mit Function as a Service (FaaS) finden Unternehmen einen cleveren Cloud-Service, der die IT effizienter, schneller und kostengünstiger macht. Die “serverless”-Lösung Oracle ProjectFn stellt bedarfsgerecht nur bestimmte Funktionen von Anwendungen bereit – und nur deren Gebrauch wird berechnet.

Kontakt:

Wenn Sie noch mehr darüber wissen möchten, dann sind wir gerne für Sie da, per LinkedIn, Facebook oder Twitter.

Kommentieren

Kommentare ( 0 )
Please enter your name.Please provide a valid email address.Please enter a comment.CAPTCHA challenge response provided was incorrect. Please try again.