Wann sich AWS Lambda als Alternative für EC2-Instanzen eignet

Lambda ist hilfreich, um auf Events innerhalb von AWS zu reagieren. Doch wann lässt sich der Service als Ersatz für EC2-Instanzen einsetzen?

AWS Lambda ist ein Service zur Ausführung von Code als Reaktion auf bestimmte Ereignisse innerhalb einer AWS-Umgebung....

Lambda ist ein PaaS-ähnliches (Platform as a Service) Produkt. Der Service verwaltet die Bereitstellung von virtuellen Servern, um bestimmten Code auszuführen.

Ein Beispiel: Als Teil eines Datenladeprozesses soll ein ETL-Prozess (Extract, Transform, Load) Daten auf einen Amazon Simple Storage Service (S3) schreiben. Dieses Ereignis löst eine Lambda-Funktion aus, die die hochgeladenen Objekte überprüft und Daten in einen relationalen Datenbankservice (RDS) lädt. Lambda kann auf verschiedene Events der Amazon Web Services (AWS) reagieren, einschließlich DynamoDB, Simple Email Service (SES), Simple Notification Service (SNS), Kinesis und Cognito.

Anwender von AWS Lambda müssen sich nicht um Patches oder Sicherheitsfragen auf Instanzebene kümmern. AWS verwaltet zudem die Skalierung und Verfügbarkeit. Lambda ist vor allem dafür geeignet, Anwendungen auszuführen, die in einer der unterstützten Programmiersprachen geschrieben sind, darunter Node.js, Python und Java.

Wann ist es nun von Vorteil, EC2-Instanzen (Elastic Compute Cloud) mit Lambda-Funktionen zu ersetzen? Hierzu einige Überlegungen:

  • Ist der Code entwickelt worden, um auf Ereignisse in AWS zu reagieren? Wenn ja, dann ist Lambda eine gute Option.
  • Wie komplex ist der Code? Jeder Code muss innerhalb von 300 Sekunden ausgeführt werden können. Lange andauernde Aufgaben eignen sich nicht für Lambda.

AWS Lambda ordnet CPU-Ressourcen im Verhältnis zum zugeordneten Speicher für Lambda-Funktionen zu. Ein Beispiel: Wenn ein Entwickler 512 MB Speicher einer Funktion zuordnet, erhält er zweimal so viele CPU-Ressourcen, als wenn er nur 256 MB Speicher seiner Funktion zuordnet. Wenn der individuelle Bedarf an CPU-Ressourcen und Speicher für eine Funktion deutlich höher ist als ursprünglich angenommen, dann ist Lambda keine gute Option für eine Anwendung. Eine CPU- oder speicheroptimierte EC2-Instanz wäre in diesem Fall die bessere Wahl.

Wenn man Instanzen für Applikationen bereitstellt, die ständig Events an verschiedenen Stellen in einer AWS-Infrastruktur anfragt, dann ist Lambda eine gute Option. Bei Lambda zahlt der Anwender nur für die Zeit, in der der Code ausgeführt wird. Erstellt ein Entwickler allerdings Code zur ständigen Überprüfung von selten auftretenden Ereignissen, müssen auch die Instanzen ständig laufen. In diesem Fall berechnet AWS die gesamte Laufzeit, auch wenn der entsprechende Code nur einen Bruchteil der Zeit ausgeführt wird.

Mehr zum Thema AWS Lambda:

Wie lässt sich der Code in AWS Lambda verwalten und überwachen?

Wie setzen sich die Kosten bei AWS Lambda zusammen?

Was ist AWS Lambda und wie kann ein Unternehmen es verwenden?

Folgen Sie SearchEnterpriseSoftware.de auch auf Twitter, Google+ und Facebook!

Artikel wurde zuletzt im November 2015 aktualisiert

Pro+

Premium-Inhalte

Weitere Pro+ Premium-Inhalte und andere Mitglieder-Angebote, finden Sie hier.

Erfahren Sie mehr über Cloud-Anwendungen

0 Kommentare

Älteste Beiträge 

Passwort vergessen?

Kein Problem! Tragen Sie Ihre E-Mail-Adresse unten ein. Wir werden Ihnen eine E-Mail mit Ihrem Passwort schicken.

Ihr Passwort wurde an die folgende E-Mail-Adresse gesendet::

- GOOGLE-ANZEIGEN

SearchSecurity.de

SearchStorage.de

SearchNetworking.de

SearchDataCenter.de

Close