© best_vector/Shutterstock.com
Teil 2: Serverless-Entwicklung mit AWS Lambda

Entwickeln mit Amazon Web Services


Der erste Artikel dieser Serie hat Ihnen einen Überblick über die Cloud-Plattform Amazon Web Services gegeben und erläutert, welche Services und Werkzeuge für Software- und Lösungsentwicklung eingesetzt werden können. Der vorliegende Artikel steht im Zeichen der Serverless-Entwicklung mit AWS Lambda, die anhand eines praktischen Beispiels mit Zugriff auf DynamoDB, der NoSQL-Datenbankvariante von AWS, veranschaulicht wird. Die Integration von DynamoDB kombinieren wir mit einer Skill-Entwicklung für Amazon Alexa zur Verwendung mit dem Endgerät Echo.

Artikelserie

Teil 1: Einführung in die AWS-Entwicklung

Teil 2: Serverless-Entwicklung mit AWS Lambda

Teil 3: Entwicklungslebenszyklus und DevOps auf AWS

Serverless-Computing bietet dem Anwender die Möglichkeit, Programmcode in der Cloud bereitzustellen und auszuführen, ohne selbst Infrastruktur konfigurieren und warten zu müssen. Im Hintergrund laufen beim Cloud-Provider aber weiterhin Server etc., um die entsprechenden Dienste bereitzustellen. Für den Nutzer dieses Cloud-Diensts ist das sehr komfortabel. Er kümmert sich primär um seine Anwendung und kann diese sehr schnell einsetzen, ohne sich Gedanken machen zu müssen, auf welcher Infrastruktur er sie betreiben kann und wie lange es dauert, sie bereitzustellen. Das erhöht die Agilität in Entwicklungsprojekten und beim Erstellen von Lösungen immens. Serverless-Computing auf der Basis von AWS Lambda bietet dabei den Charme, dass sich AWS Lambda auch um die automatische Skalierung der Infrastruktur kümmert, sofern der Programmcode dies benötigt. Dabei wird der Code der Anwendung parallel ausgeführt. Das Abrechnungsmodell von AWS Lambda ist hier ebenfalls sehr interessant: Wird kein Code ausgeführt, entstehen auch keine Gebühren. Ansonsten wird im 100-Millisekunden-Bereich abgerechnet. Lambda wird dabei so eingerichtet, dass es auf Events von Services innerhalb der AWS-Plattform reagiert. So kann es z. B. auf eine neu generierte Datei und dann entsprechend mit dem bereitgestellten Code reagieren. Weitere Dienste, die innerhalb der AWS-Plattform als Trigger für AWS Lambda genutzt werden können, sind DynamoDB, Kinesis, SNS oder CloudWatch. Um Lambda-Funktionen zu erstellen, kann der Anwender einerseits aus verschiedenen Blueprints wählen und die Funktion auch direkt im Browser erstellen. Abbildung 1 zeigt Blueprints für Funktionen, die mit S3 oder Kinesis interagieren können.

schmailzl_aws_1.tif_fmt1.jpgAbb.1: Überblick Lambda-Blueprints

Die Entwicklung kann andererseits auch mit einer leere...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang