Function as a Service (FaaS) ist ein Cloud-Computing-Service, mit dem Kunden Code als Reaktion auf Ereignisse ausführen können, ohne die komplexe Infrastruktur verwalten zu müssen, die normalerweise mit dem Aufbau und Start von Microservices Anwendungen verbunden ist.
Das Hosten einer Softwareanwendung im Internet erfordert in der Regel die Bereitstellung und Verwaltung eines virtuellen oder physischen Servers sowie die Verwaltung eines Betriebssystems und von Webserver-Hosting-Prozessen. Im Fall von FaaS wird die Verwaltung der physischen Hardware, des Betriebssystems der virtuellen Maschine und der Webserver-Software automatisch vom Cloud-Service-Provider übernommen. Diese Funktion ermöglicht es Entwicklern, sich ausschließlich auf einzelne Funktionen in ihrem Anwendungscode zu konzentrieren.
Serverless und Function-as-a-Service (FaaS) werden oft miteinander verwechselt. Tatsächlich lässt sich FaaS als Untergruppe von Serverless definieren.
Serverless hat jede Servicekategorie zum Fokus, sei es Rechenleistung, Speicherung, Datenbank, Messaging oder API-Gateways, wo die Konfiguration, Verwaltung und Rechnungsstellung für Server für den Benutzer unsichtbar sind.
FaaS ist zwar vielleicht die zentralste Technologie in serverlosen Architekturen, konzentriert sich jedoch auf das ereignisgesteuerte Computing-Paradigma, bei dem Anwendungscode oder Container nur als Reaktion auf Ereignisse oder Anfragen ausgeführt werden.
FaaS ist ein wertvolles Tool für eine effiziente und kostengünstige Anwendungsmigration in die Cloud. Hier sind einige weitere Vorteile:
Es gibt mehrere Best Practices, die Sie befolgen können, um die Bereitstellung von FaaS einfacher und effektiver zu gestalten:
Da Transaktionen einfach isoliert und skaliert werden können, eignet sich FaaS für hochgradig parallele Workloads mit hohem Volumen. Die Lösung kann auch zur Erstellung von Backend-Systemen oder für Aktivitäten wie Datenverarbeitung, Formatkonvertierung, Codierung oder Datenaggregation verwendet werden.
FaaS ist auch ein gut geeignetes Tool für Webanwendungen, Backends, Daten-/Stromverarbeitung sowie für die Erstellung von Online-Chatbots oder -Backends für IoT-Geräte. FaaS kann Ihnen bei der Verwaltung und Nutzung von Services anderer Anbieter helfen. Wenn Sie beispielsweise über die Entwicklung einer Android-App nachdenken, können Sie einen FaaS-Ansatz wählen, um Ihre Kosten im Rahmen zu halten. Da Ihnen nur Kosten berechnet werden, wenn Ihre App für eine bestimmte Funktion wie die Stapelverarbeitung eine Verbindung mit der Cloud herstellt, kann dies im Vergleich zu einem herkömmlichen Ansatz die erheblich günstigere Vorgehensweise sein.
FaaS kann auch die Rechenleistung erheblich steigern. So haben zwei Studenten kürzlich gemeinsam mit IBM Ingenieuren erforscht, wie sich IBM Cloud-Funktionen für Monte-Carlo-Simulationen (mathematische Methoden zur Abschätzung der zukünftigen Ergebnisse bestimmter schwer vorhersehbarer Ereignisse) nutzen lassen, um Aktienkurse abzuschätzen. Monte-Carlo-Simulationen gelten als wichtiger leistungsfähiger Computing-Workload.
Die Kombination aus Monte Carlo und IBM Cloud Functions ermöglichte es dem Team, Berechnungen in großem Umfang durchzuführen und die Geschäftslogik in den Fokus zu stellen. Mit FaaS konnte das Team eine komplette Monte-Carlo-Simulation mit 1.000 gleichzeitigen Aufrufen in etwa 90 Sekunden abschließen. Im Vergleich dazu dauerte derselbe Ablauf auf einem Laptop mit vier CPU-Kernen 247 Minuten bei einer CPU-Auslastung von fast 100 %.
FaaS, PaaS (Platform-as-a-Service), Container und Virtual Machines (VMs) spielen alle eine entscheidende Rolle im serverlosen Ökosystem. Da FaaS das zentralste und in höchstem Maße definitorische Element des Serverless-Stacks ist, lohnt es sich zu untersuchen, wie sich FaaS in den wichtigsten Merkmalen von anderen aktuell gängigen Rechenmodellen auf dem Markt unterscheidet:
Kubernetes und Knative sind eine Implementierung der „Klempnerarbeit“ hinter FaaS. Kubernetes ist eine Open-Source-Plattform für die Containerorchestrierung, die für die Verwaltung von Cloudanwendungen von entscheidender Bedeutung ist. Knative macht das serverlose Arbeiten innerhalb eines Kubernetes-Clusters möglich.
Dank der Kombination von Knative und Kubernetes können Sie die Vorteile von Kubernetes-Funktionen wie Überwachung, Sicherheit, Protokollierung und Authentifizierung nutzen und diese mit den Leistungen von Knative wie dem automatisierten Containeraufbau, der vollständigen Portierbarkeit und der Arbeit in hybriden Umgebungen kombinieren.
Die Begründer dieser Technologie waren davon überzeugt, dass Entwicklungsteams bei der Erstellung von Cloud-Anwendungen nicht zwischen Serverless und Containern wählen müssen. Das Ziel bestand darin, die Verfügbarkeit und Konsistenz von Containern mit der leistungsstarken Skalierung und dem On-Demand-Zugriff von Serverless zu erweitern.
Beschleunigen Sie Ihre Unternehmenstransformation mit Cloud-Lösungen, die auf Innovation und Wachstum ausgelegt sind. Erkunden Sie hochmoderne Tools und Erkenntnisse, um der Konkurrenz immer einen Schritt voraus zu sein.
Sind Sie bereit, Ihr Unternehmen zu modernisieren? Entdecken Sie die effizientesten Cloud-Migrationsstrategien, mit denen Sie die Leistung optimieren, Kosten senken und die Skalierbarkeit verbessern können.
Erfahren Sie, wie Infrastructure as a Service (IaaS) Ihr Unternehmen mit skalierbaren, flexiblen und kosteneffizienten Cloud-Infrastrukturlösungen unterstützen kann, die auf Ihre Bedürfnisse zugeschnitten sind.
Erfahren Sie, wie IaaS, PaaS und SaaS Ihre Abläufe transformieren können und Flexibilität, Skalierbarkeit und Kosteneffizienz bieten. Verstehen Sie die Unterschiede und wählen Sie die perfekte Lösung für das Wachstum Ihres Unternehmens.
Erfahren Sie, wie NoSQL-Datenbanken Ihre Datenverwaltungsstrategie mit flexiblen, skalierbaren Lösungen verbessern können. Erfahren Sie mehr über die Arten und Vorteile von NoSQL, um in der heutigen datengesteuerten Welt an der Spitze zu bleiben.
Erfahren Sie, wie Techwave IBM Cloud Bare Metal Server einsetzte, um die digitale Transformation voranzutreiben und seinen Kunden Flexibilität, Skalierbarkeit und vollständige Kontrolle zu gewährleisten.
Nutzen Sie unsere Cloud-Services, die auf unserer IBM Consulting Advantage-Plattform basieren, um Ihren Weg zur Hybrid Cloud zu beschleunigen und so die Kosteneffizienz, Produktivität und Nachhaltigkeit zu steigern und die Markteinführungszeit zu verkürzen.
Das dedizierte Server-Hosting von IBM bietet vollständige Isolierung, Kontrolle und Sicherheit für geschäftskritische Workloads mit anpassbaren Optionen.
IBM Cloud Virtual Server for VPC ist eine Familie von virtuellen Servern mit Intel x86, IBM Z und IBM LinuxONE, die auf IBM Cloud Virtual Private Cloud basieren.