Zum Inhalt springen
BlogEntwickler-ToolsZerlegen Sie Ihren Code: Eine Einführung in serverlose Funktionen und FaaS

Brechen Sie Ihren Code auf: Eine Einführung in serverlose Funktionen und FaaS

Eine Einführung in serverlose Funktionen und FaaS

Funktionen, Serverless und Kubernetes - wenn Sie sich darauf vorbereiten, Ihre erste containerisierte Anwendung zu erstellen, können diese Tools und die ihnen zugrunde liegenden Konzepte miteinander verschwimmen. In diesem Beitrag entmystifizieren wir diese wichtigen Themen für die Erstellung skalierbarer Cloud-nativer Anwendungen.

Was ist Kubernetes?

Kubernetes ist eine Container-Orchestrierung zur Verwaltung des Lebenszyklus von Containern und der Knoten, auf denen sie laufen.

Aufschlüsselung:

  • Im Allgemeinen handelt es sich bei einem Container um eine Anwendung, die mit ihren Abhängigkeiten verpackt ist und sich nicht auf das zugrunde liegende Betriebssystem für zusätzliche Bibliotheken stützt.
  • Container werden in Pods gruppiert, die auf Nodes laufen.
  • Ein Node ist eine Recheneinheit, oft eine VM unter Linux (aber technisch gesehen jeder virtuelle oder physische Server in Ihrem Cluster, auf dem Ihre Pods oder Containergruppen laufen).

Kubernetes orchestriert die Erstellung von Knoten und die Bereitstellung, Zerstörung und Verschiebung von Containern und Pods auf Knoten anhand der vom Entwickler festgelegten Kriterien.

Kubernetes ist entscheidend für die Erstellung und Automatisierung von Container-Anwendungen für Skalierung und hohe Verfügbarkeit. Wenn Sie Kubernetes noch nicht kennen, finden Sie bei uns eine Vielzahl von Lerninhalten, die Ihnen den Einstieg erleichtern.

Kubernetes unterscheidet sich stark von serverlosen Funktionen und FaaS, wird aber häufig für das Backend verwendet, das diese Architekturen erst möglich macht.

Was ist Serverless?

Serverless ist ein Entwicklungsmodell, das es Entwicklern ermöglicht, sich auf die Bereitstellung von Code über Container zu konzentrieren, ohne dass sie Server oder andere Cloud-Infrastrukturen verwalten müssen. Der Cloud-Anbieter ist für die Verwaltung aller Komponenten auf Server-/OS-Ebene und darunter verantwortlich, um den Entwicklern eine hochgradig optimierte Umgebung für das Schreiben und Bereitstellen von Code zu bieten.


Diagramm der serverlosen Architektur

Die Terminologie kann von Anbieter zu Anbieter variieren, aber die serverlose Architektur verlagert die Verantwortung vom Entwickler auf den Cloud-Anbieter für alles von der Server-Ebene und darunter.

Was ist eine Funktion?

Der Aufbau modularer Komponenten für eine Anwendung, die in der Regel als Microservices bezeichnet werden, ermöglicht es Entwicklern, Codeabschnitte für häufig genutzte Funktionen zu segmentieren. Diese Teile werden als Funktionen bezeichnet, die ausgeführt werden, wenn sie durch ein Ereignis ausgelöst werden. 

Jede Benutzeraktivität, die ein Ereignis oder eine Reihe von Ereignissen auslöst, kann als Funktion implementiert werden. So kann beispielsweise ein Benutzer, der sich auf Ihrer Website anmeldet, eine Datenbankänderung auslösen, die wiederum eine Willkommens-E-Mail auslöst. Eine Kette von serverlosen Funktionen kann die Backend-Arbeiten übernehmen.


Eine Kette von serverlosen Funktionen

Was ist Functions as a Service (FaaS)?

Der Begriff "as a Service" wird heute in unserer Branche für fast alles verwendet. Ganz allgemein gesprochen, alles as a Service bedeutet, dass ein Cloud-Anbieter die gesamte Backend-Infrastruktur übernimmt, um einen optimierten Zugriff auf eine Funktion zu ermöglichen. FaaS ermöglicht es Entwicklern, Funktionen zu erstellen und auszuführen, ohne dass sie eine Infrastruktur unterhalten müssen. FaaS-Angebote werden in der Regel nach Ausführungszeit abgerechnet, d. h. es wird nur abgerechnet, solange ein Teil des Codes ausgeführt wird. Dies kann im Vergleich zum 24/7-Betrieb eines Servers sehr kostengünstig sein.

FaaS-Plattformen erleichtern die Bereitstellung und Verwaltung von Funktionen, indem sie auf einer bestimmten Infrastrukturtechnologie wie Kubernetes aufbauen oder eine grafische Benutzeroberfläche bereitstellen, mit der Funktionen erstellt und mit Anwendungen verbunden werden können, ohne dass Code geschrieben werden muss.(Erfahren Sie mehr über Low-Code- und "No-Code"-Anwendungen).

Von der Community eingereichte Funktionen erleichtern die Suche und Implementierung von Logik zur Optimierung der Anwendungsleistung. FaaS ist ein beliebtes Produkt, das von vielen Cloud-Anbietern angeboten wird und es den Nutzern ermöglicht, Funktionen und Anwendungsinfrastruktur in einem zu verwalten.

Interessieren Sie sich für Funktionen bei Akamai?

Wenn Sie derzeit Funktionen von einem beliebigen Anbieter als Teil Ihrer Anwendungsentwicklung verwenden, möchten wir von Ihnen hören. Akamai Cloud Computing Services prüft die Aufnahme von Funktionen in unsere Cloud-Plattform. Nehmen Sie an der Umfrage teil, um uns mitzuteilen, was Sie suchen, oder melden Sie sich an, um benachrichtigt zu werden, wenn ein Funktionsdienst in der Betaphase verfügbar ist.


Kommentare

Kommentar abgeben

Ihre E-Mail Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit *gekennzeichnet