Vor- und Nachteile des Serverless Computing: 5 Vor- und 3 Nachteile

Bild: a-Bild, Getty Images / iStockphoto

Wenn Sie mit der Welt des Cloud Computing vertraut waren, haben Sie wahrscheinlich von einem Dienst gehört, der immer beliebter wird: Serverless Computing.

Diese Form des Computing-as-a-Service hat ihre Vorteile, insbesondere für diejenigen, die wirklich Cloud-Computing ohne Hände wollen, aber nicht für jedermann. Wenn Sie erwogen haben, einen ständig aktiven Cloud-Computer zugunsten von On-Demand-Diensten ohne Server zu streichen, sollten Sie diese Vor- und Nachteile abwägen, um herauszufinden, ob Serverless Computing für Sie geeignet ist.

5 Vorteile von Serverless Computing

1. Keine zu wartende Infrastruktur

Die Debatte geht weiter darüber, ob die Cloud wirklich "der Computer eines anderen" ist, aber diese Debatte hat keinen Platz im Serverless Computing.

Serverlose Computerdienste, bei denen es sich um kleine Codeausschnitte handelt, mit denen eine einzelne Funktion ausgeführt werden soll, werden auf bereits vorhandenen Servern ausgeführt, auf denen Funktionen für unzählige andere Kunden ausgeführt werden. Da Sie buchstäblich den Computer eines anderen Benutzers verwenden, um Ihre Funktionen ohne Server auszuführen, gibt es keine Infrastruktur, die mit Serverless Computing - auch virtuell - gewartet werden kann.

2. Keine Kosten, wenn Funktionen nicht ausgeführt werden

Wie Hacker Noon hervorhebt, sind die mit Serverless Computing verbundenen Kosten im Vergleich zu anderen Cloud-Diensten minimal. Zugriffsberechtigung, Anwesenheitserkennung, Sicherheit, Bildverarbeitung und andere mit dem Betrieb eines Servers verbundene physische oder virtuelle Kosten entfallen bei einem Modell ohne Server.

In der AWS Lambda-Preistabelle finden Sie eine Vorstellung von den Kosten, die mit Serverless Computing verbunden sind. Lambda-Funktionen sind eine Art von Serverless Computing, die von AWS angeboten wird, und sie sind unglaublich kostengünstig für diejenigen, die Analysen durchführen, Daten verarbeiten, Webanwendungen verwalten oder andere von Lambda verwaltete Dienste ausführen müssen.

Diejenigen, die weniger als eine Million und 400.000 GB-Sekunden Rechenzeit pro Monat ausführen, müssen nichts bezahlen. Darüber hinaus sind es nur 0, 20 US-Dollar pro zusätzliche Million Anfragen und 0, 00001667 US-Dollar für jede zusätzliche GB-Sekunde Verarbeitungsleistung (dies ist nur eine Schätzung und kann je nach der von einer Funktion verwendeten Speichermenge variieren). Die Preise sind in allen Regionen außer in Hongkong gleich (Einzelheiten finden Sie auf der AWS Lambda-Preisseite).

Kurz gesagt, serverlose Funktionen können spottbillig sein, und wenn sie nicht für die Verwendung hochgefahren werden, zahlen Sie nichts.

3. Unendlich skalierbar

In Bezug auf die Cloud-Funktionen von Google ist die automatische Skalierung eines der wichtigsten Verkaufsargumente. Google teilt diese Funktion mit AWS und Azure. Tatsächlich ist jede serverlose Plattform, in die es sich zu investieren lohnt, so konzipiert, dass sie je nach Bedarf skaliert werden kann.

Dies ist ein weiterer Vorteil von Serverless Computing: Es ist nie erforderlich, einen neuen Cloud-Server zu partitionieren oder zusätzliche Rechenleistung für eine vorhandene Instanz zu erwerben. All dies wird von der serverlosen Computerplattform erledigt, sodass Sie keine Komplikationen mehr haben, abgesehen von einer etwas höheren Rechnung für zusätzliche Rechenzeit.

4. Reduzierte Latenz

Cloudflare weist darauf hin, dass die Verwendung von Funktionen ohne Server die Latenz für Endbenutzer erheblich reduzieren kann. Serverlose Funktionen werden nicht von einem Ursprungsserver aus ausgeführt, sodass es keinen einzigen Ort gibt, an den der Datenverkehr eines Endbenutzers geleitet werden muss.

Stattdessen kann jedes Rechenzentrum eines Cloud-Anbieters zum Ausführen einer Funktion ohne Server verwendet werden. Dies bedeutet, dass der Server, dem ein Benutzer am nächsten ist, die Funktion ausführt, wodurch die Antwortzeit erheblich verkürzt wird.

5. Reduzierte Softwarekomplexität

Beim Erstellen von Code für die direkte Ausführung auf einem Computer müssen viele Dinge berücksichtigt werden: Das Betriebssystem, die Hardwareressourcen, die zum Ausführen bestimmter Aufgaben, Abhängigkeiten und anderer Faktoren erforderlich sind, sind Teil der Erstellung einer funktionierenden App.

Serverlose Computerfunktionen müssen dies nicht berücksichtigen - der Code muss nur von der verwendeten Cloud-Plattform unterstützt werden. Serverlose Funktionen sind nicht nur einfacher zu erstellen, sondern erfordern auch viel weniger Programmierkenntnisse, was die Entwicklung für Benutzer mit geringeren Fähigkeiten ermöglicht.

3 Nachteile von Serverless Computing

1. Sicherheitsprobleme

Ein Server, auf dem Funktionen ohne Server ausgeführt werden, führt sie für unzählige Kunden aus, was viele Sicherheitsbedenken aufwirft. Die TechRepublic-Schwestersite ZDNet listet 10 potenzielle Sicherheitsrisiken im Zusammenhang mit Serverless Computing auf, darunter:

  • Injection von Funktionsereignisdaten, bei der es sich um einen SQL-Injection-Angriff auf einen Server handelt, auf dem serverlose Funktionen ausgeführt werden;
  • Unsichere Serverless Deployment-Konfiguration, die eine beliebige Anzahl von Fehlern auf administrativer Seite berücksichtigt, die Serverless Computing-Server für Man-in-the-Middle-Angriffe offen lassen.
  • Unzureichende Überwachung und Protokollierung von Funktionen, die Administratoren auf Angreifer hinweisen können, die Aufklärung durchführen, um das Angriffspotential zu testen;
  • Unsichere Abhängigkeiten von Drittanbietern - Serverlose Funktionen, die Abhängigkeiten von Drittanbietern aufrufen, können Daten gefährden, wenn diese Abhängigkeiten schädlichen Code enthalten. und
  • DDoS-Angriffe auf serverlose Plattformen können diese überlasten und die Funktionalität für mehrere Kunden gleichzeitig beeinträchtigen.

2. Vendor Lock-In

Das Erstellen von Funktionen ohne Server auf einer Plattform kann dazu führen, dass die Migration auf eine andere schwierig ist. Code muss möglicherweise neu geschrieben werden, APIs, die auf einer Plattform vorhanden sind, sind möglicherweise nicht auf einer anderen Plattform vorhanden, und zusätzliche Arbeitskräfte (und Geld) müssen bereitgestellt werden, um beispielsweise von AWS zu Azure oder Google Cloud zu wechseln.

Wenn Sie in eine Plattform ohne Server investieren möchten, stellen Sie sicher, dass der Anbieter, den Sie in Betracht ziehen, über alles verfügt, was Sie benötigen, da es ein großes Problem sein kann, einige Monate oder Jahre nach Beginn Ihres Dienstes mit Ihrem Anbieter ohne Server unzufrieden zu sein.

3. Das Debuggen ist schwieriger

Jedes Mal, wenn eine serverlose Instanz hochfährt, wird eine neue Version von sich selbst erstellt. Dies bedeutet, dass es schwierig ist, Daten zu sammeln, die zum Debuggen und Beheben einer serverlosen Funktion erforderlich sind.

Es gibt Tools von Drittanbietern, die Ereignisse ohne Serverfunktion protokollieren. Ohne Hinzufügen eines zusätzlichen Tools kann das Debuggen einer Funktion ohne Server jedoch umständlich sein. AWS erfordert beispielsweise ein schrittweises Debugging (zeilenweise), um herauszufinden, was falsch läuft.

Das Debuggen von Funktionen ohne Server ist möglich, aber keine einfache Aufgabe, und es kann viel Zeit und Ressourcen verbrauchen.

Ist Serverless Computing ideal für Sie?

Ob Sie Serverless Computing in Betracht ziehen möchten, hängt weniger von den Vor- und Nachteilen als vielmehr von Ihren speziellen Anforderungen ab.

Wenn Ihre Computeranforderungen zu detaillierten, kurzfristigen Aufgaben mit einem einzigen Zweck tendieren, kann Serverless Computing eine großartige Investition sein, die Zeit und Geld spart. Wenn Sie offene Systeme benötigen, die viele eingehende Analysen durchführen oder lang laufende Berechnungen durchführen, ist dies wahrscheinlich nichts für Sie.

Weitere Informationen zu Optionen für Serverless Computing finden Sie auf den Seiten von AWS, Google Cloud, IBM Cloud Functions und Microsoft Azure.

Cloud und alles als Service Newsletter

Dies ist Ihre Anlaufstelle für die neuesten Informationen zu AWS, Microsoft Azure, Google Cloud Platform, XaaS, Cloud-Sicherheit und vielem mehr. Montags geliefert

Heute anmelden

© Copyright 2020 | mobilegn.com