Allgemeines

F: Was ist AWS Lambda?

Mit AWS Lambda können Sie Code ausführen, ohne Server bereitstellen und verwalten zu müssen. Sie bezahlen nur für die Rechenzeit, die Sie verbrauchen – es entstehen keine Kosten, wenn Ihr Code nicht ausgeführt wird. Mit Lambda können Sie Code für fast jede Anwendungsart oder jeden Back-End-Service ausführen, und zwar ohne Administration. Laden Sie Ihren Code einfach hoch und Lambda übernimmt alles, was zum Ausführen und Skalieren Ihres Codes für hohe Verfügbarkeit erforderlich ist. Sie können Ihren Code so einrichten, dass er automatisch von anderen AWS-Services ausgelöst wird, oder ihn indirekt von einer beliebigen Web- oder Mobil-App aufrufen.

F: Was ist serverlose Datenverarbeitung?

Mit der serverlosen Datenverarbeitung können Sie Anwendungen und Services erstellen und ausführen, ohne sich über Server Gedanken machen zu müssen. Bei der serverlosen Datenverarbeitung wird Ihre Anwendung zwar weiterhin auf Servern ausgeführt, die Serververwaltung übernimmt jedoch AWS. Im Zentrum der serverlosen Datenverarbeitung steht AWS Lambda. Damit können Sie Ihren Code ausführen, ohne Server bereitstellen oder verwalten zu müssen. Weitere Informationen zur serverlosen Datenverarbeitung finden Sie hier.

F: Welche Ereignisse können eine AWS Lambda-Funktion auslösen?

Eine vollständige Liste von Ereignisquellen finden Sie in unserer Dokumentation.

F: Wann sollte ich AWS Lambda statt Amazon EC2 verwenden?

Amazon Web Services bietet eine Reihe von Datenverarbeitungsservices für verschiedene Anforderungen und Wünsche.

Amazon EC2 bietet Flexibilität mit zahlreichen Instance-Typen und der Option, das Betriebssystem, die Einstellungen für Netzwerk und Sicherheit und den ganzen Software-Stack anzupassen. So können Sie vorhandene Anwendungen leichter in die Cloud verschieben. Bei Amazon EC2 sind Sie zuständig für die Bereitstellung von Kapazität, die Überwachung von Flottenzustand und -leistung sowie das Entwerfen von Fehlertoleranz und Skalierbarkeit. AWS Elastic Beanstalk ist ein benutzerfreundlicher Service für die Bereitstellung und Skalierung von Webanwendungen, bei dem der Besitz der zugrunde liegenden EC2-Instances und die volle Kontrolle darüber bei Ihnen verbleibt. Amazon EC2 Container Service ist ein umfassend skalierbarer, sehr leistungsfähiger Container-Management-Service, der Docker-Container unterstützt und es Ihnen erlaubt, verteilte Anwendungen auf einem verwalteten Cluster von Amazon EC2-Instances zu betreiben und zu verwalten.

AWS Lambda vereinfacht die Ausführung von Code beim Eintreten bestimmter Ereignisse, z. B. von Änderungen an Amazon S3-Buckets, Updates von Amazon DynamoDB-Tabellen oder benutzerdefinierten, durch Ihre Geräte oder Anwendungen generierten Ereignissen. Bei Lambda müssen Sie nicht Ihre eigenen Instances bereitstellen. Lambda führt alle Betriebs- und Verwaltungsaktivitäten für Sie durch, einschließlich Kapazitätsbereitstellung, Überwachung des Zustands der Instances, Sicherheitspatches für die zugrunde liegenden Datenverarbeitungsressourcen, Bereitstellung Ihres Codes, Betreiben eines Webservice-Front-End und Überwachung und Protokollierung Ihres Codes. AWS Lambda bietet einfache Skalierung und hohe Verfügbarkeit für Ihren Code, ohne dass Sie sich weiter darum kümmern müssen.

F: Welche Art von Code kann auf AWS Lambda ausgeführt werden?

AWS Lambda bietet eine einfache Methode zum Durchführen vieler Aktivitäten in der Cloud. Sie können AWS Lambda beispielsweise verwenden, um Folgendes zu erstellen: Mobil-Backends, die Daten von Amazon DynamoDB abrufen und transformieren, Handler, die Objekte komprimieren oder transformieren, wenn Sie zu Amazon S3 hochgeladen werden, Prüfungen und Berichte über API-Aufrufe an Amazon Web Service und serverlose Verarbeitung von Streaming-Daten mit Amazon Kinesis.

F: Welche Sprachen unterstützt AWS Lambda?

AWS Lambda unterstützt Code in Node.js (JavaScript), Python, Java (Java 8-kompatibel) und C# (.NET Core). Ihr Code kann vorhandene Node.js-Bibliotheken enthalten, auch native. Lesen Sie unsere Dokumentation über die Nutzung von Node.js, Python, Java und C#.

F: Kann ich auf die Infrastruktur zugreifen, auf der AWS Lambda läuft?

Nein. AWS Lambda betreibt die Datenverarbeitungs-Infrastruktur für Sie und ermöglicht dort Zustandsprüfungen, die Anwendung von Sicherheitspatches und die Durchführung sonstiger Routineaufgaben der Wartung.

F: Wie isoliert AWS Lambda meinen Code?

Jede AWS Lambda-Funktion führt ihre eigene isolierte Umgebung aus, mit eigenen Ressourcen und eigener Dateisystemansicht. AWS Lambda verwendet für die Sicherheit und die Trennung auf Infrastruktur- und Ausführungsebene dieselben Methoden wie Amazon EC2.

F: Wie sichert AWS Lambda meinen Code?

AWS Lambda speichert Code auf Amazon S3 und verschlüsselt ihn bei der Speicherung. AWS Lambda führt, während Ihr Code verwendet wird, zusätzliche Integritätsprüfungen durch.

F: Welche AWS-Regionen sind für AWS Lambda verfügbar?

Diese Informationen finden Sie in der Tabelle für globale Infrastrukturregionen von AWS.

Funktionen von AWS Lambda

F: Was ist eine AWS Lambda-Funktion?

Der Code, den Sie auf AWS Lambda ausführen, wird als "Lambda-Funktion" hochgeladen. Jeder Funktion sind Konfigurationsinformationen zugeordnet, etwa der Name der Funktion, ihre Beschreibung, ihr Einstiegspunkt und ihre Ressourcenanforderungen. Der Code muss in einem "zustandslosen" Stil geschrieben sein, also davon ausgehen, dass es keine Affinität zur zugrunde liegenden Infrastruktur gibt. Der lokale Zugriff auf das Dateisystem, untergeordnete Prozesse und ähnliche Elemente bestehen möglicherweise nicht über die Laufzeit der Anforderung hinaus. Jeder persistente Zustand sollte in Amazon S3, Amazon DynamoDB oder einem anderen im Internet verfügbaren Speicherservice gespeichert werden. Lambda-Funktionen können Bibliotheken enthalten, auch native.

F: Wird AWS Lambda Funktions-Instances wiederverwenden?

AWS Lambda kann zur Verbesserung der Leistung, anstatt eine neue Instance zu erstellen, eine Instance Ihrer Funktion beibehalten und zur Verarbeitung der nächsten Anforderung einsetzen. Weitere Informationen zur Wiederverwendung von Funktions-Instances durch Lambda finden Sie in der Dokumentation. Bei Ihrem Code sollte nicht davon ausgegangen werden, dass das immer passiert.

F: Was ist, wenn ich temporären Datenträgerspeicherplatz für meine AWS Lambda-Funktion benötige?

Jede Lambda-Funktion erhält 500 MB nicht persistenten Speicherplatz in seinem eigenen /tmp-Verzeichnis.

F: Warum müssen AWS Lambda-Funktionen zustandslos sein?

Werden Funktionen zustandslos gehalten, so kann AWS Lambda rasch so viele Kopien der Funktionen starten, wie entsprechend der Häufigkeit der eingehenden Ereignisse zum Skalieren benötigt werden. Obwohl das AWS Lambda-Programmiermodell zustandslos ist, kann Ihr Code auf zustandsbehaftete Daten zugreifen, indem er andere Web-Services aufruft, etwa Amazon S3 oder Amazon DynamoDB.

F: Kann ich in meinem AWS Lambda-Funktionscode Threads und Prozesse verwenden?

Ja. Mit AWS Lambda können Sie normalsprachliche und Betriebssystem-Funktionen verwenden, etwa zusätzliche Threads und Prozesse erstellen. Der Lambda-Funktion zugewiesene Ressourcen – einschließlich Arbeitsspeicher, Ausführungszeit, Datenträger und Netzwerknutzung – werden von allen Threads/Prozessen gemeinsam genutzt. Sie können Prozesse mit jeder Sprache starten, die durch Amazon Linux unterstützt wird.

F: Welche Beschränkungen gelten für AWS Lambda-Funktionscode?

Lambda versucht, normalsprachliche und Betriebssystemaktivitäten möglichst geringfügig einzuschränken, einige Aktivitäten sind jedoch deaktiviert: Eingehende Netzwerkverbindungen werden durch AWS Lambda blockiert, es werden für ausgehende Verbindungen nur TCP/IP-Sockets unterstützt, und ptrace-Systemaufrufe (Debugging) werden blockiert. Als Maßnahme gegen Spam wird auch Datenverkehr über TCP-Port 25 blockiert.

F: Wie erstelle ich mit der Lambda-Konsole eine AWS Lambda-Funktion?

Wenn Sie Node.js oder Python verwenden, können Sie den Code mit dem Code-Editor in der AWS Lambda-Konsole selbst schreiben. Dort schreiben und testen Sie Ihre Funktionen und sehen die Ergebnisse der Funktionsausführung in einer robusten, IDE-ähnlichen Umgebung. Zum Starten die Konsole öffnen.

Sie können auch den Code (und alle abhängigen Bibliotheken) als ZIP-Datei packen und über die AWS Lambda-Konsole aus Ihrer lokalen Umgebung hochladen; oder Sie können einen Amazon S3-Ort angeben, an dem sich die ZIP-Datei befindet. Uploads dürfen höchstens 50 MB groß sein (komprimiert). Sie können das AWS Eclipse-Plug-in verwenden, um Lambda-Funktionen in Java zu schreiben und bereitzustellen. Sie können das Visual Studio-Plug-in verwenden, um Lambda-Funktionen in C# und Node.js zu schreiben und bereitzustellen.

F: Wie erstelle ich mit der Lambda-Befehlszeile eine AWS Lambda-Funktion?

Sie können den Code (und alle abhängigen Bibliotheken) als ZIP-Datei packen und über die AWS-Befehlszeilenschnittstelle aus Ihrer lokalen Umgebung hochladen; oder Sie können einen Amazon S3-Ort angeben, an dem sich die ZIP-Datei befindet. Uploads dürfen höchstens 50 MB groß sein (komprimiert). Informationen zum Einstieg finden Sie in Erste Schritte mit AWS Lambda.

F: Unterstützt AWS Lambda Umgebungsvariablen?

Ja. Sie können über die AWS Lambda-Konsole, CLI oder SDKs auf einfach Weise Umgebungsvariablen erstellen und ändern. Weitere Informationen zu Umgebungsvariablen finden Sie in der Dokumentation.

F: Kann ich sensible Informationen in Umgebungsvariablen speichern?

Für sensible Informationen wie Datenbankpasswörter empfehlen wir die Client-seitige Verschlüsselung mit AWS Key Management Service. Speichern Sie die daraus resultierenden Werte anschließend als Chiffriertext in Ihrer Umgebungsvariable. Zum Verschlüsseln dieser Werte müssen Sie in Ihren AWS Lambda-Funktionscode Logik einbeziehen.

F: Wie kann ich meine AWS Lambda-Funktionen verwalten?

Sie können Ihre Lambda-Funktionen problemlos mit dem Dashboard in der AWS Lambda-Konsole auflisten, löschen, aktualisieren und überwachen. Sie können für die Verwaltung Ihrer Lambda-Funktionen auch die AWS-Befehlszeile und AWS SDK verwenden. Weitere Informationen finden Sie im Lambda-Entwicklerhandbuch.

F: Wie überwache ich eine AWS Lambda-Funktion?

AWS Lambda überwacht automatisch Lambda-Funktionen für Sie und berichtet in Echtzeit über Metriken in Amazon CloudWatch, einschließlich Gesamtanforderungen, gleichzeitiger Nutzung auf Konto- und Funktionsebene, Latenz, Fehlerraten und gedrosselter Anforderungen. Kennzahlen über die einzelnen Lambda-Funktionen können Sie über die Amazon CloudWatch-Konsole oder die AWS Lambda-Konsole anzeigen. Sie können in Ihrer Lambda-Funktion auch Überwachungs-APIs anderer Anbieter aufrufen.

Weitere Informationen finden Sie in Troubleshooting CloudWatch metrics. Für die in Lambda integrierten Kennzahlen werden die Standardgebühren für Lambda berechnet.

F: Wie behebe ich Fehler in einer AWS Lambda-Funktion?

AWS Lambda wird automatisch in Amazon CloudWatch Logs integriert und erstellt eine Protokollgruppe für jede Lambda-Funktion. Außerdem werden grundlegende Protokolleinträge für Ereignisse des Anwendungslebenszyklus‘ bereitgestellt, einschließlich Protokollierung der Ressourcen, die für die einzelnen Benutzungen dieser Funktion verbraucht wurden. Sie können auf einfache Art zusätzliche Protokollierungsanweisungen in Ihren Code einfügen. Sie können in Ihrer Lambda-Funktion auch Protokollierungs-APIs anderer Anbieter aufrufen. Weitere Informationen finden Sie in Troubleshooting Lambda functions. Es gelten die Gebühren für Amazon CloudWatch Logs.

F: Wie skaliere ich eine AWS Lambda-Funktion?

Sie müssen Ihre Lambda-Funktionen nicht skalieren – AWS Lambda erledigt das automatisch für Sie. Jedesmal, wenn eine Ereignisbenachrichtigung für Ihre Funktion empfangen wird, lokalisiert AWS Lambda rasch freie Kapazitäten in seiner Datenverarbeitungsflotte und führt Ihren Code aus. Da Ihr Code zustandslos ist, kann AWS Lambda ohne zeitaufwendige Bereitstellung und Konfiguration so viele Kopien Ihrer Funktion starten, wie benötigt werden. Es gibt keine grundsätzliche Beschränkung für die Skalierung einer Funktion. AWS Lambda weist entsprechend der Häufigkeit der eingehenden Ereignisse Kapazitäten dynamisch zu.

F: Wie werden Datenverarbeitungsressourcen einer AWS Lambda-Funktion zugewiesen?

Beim AWS Lambda-Ressourcenmodell wählen Sie die Größe des Arbeitsspeichers, die Sie für Ihre Funktion möchten, und bekommen Rechenleistung und andere Ressourcen proportional zugewiesen. Bei Auswahl von 256 MB Arbeitsspeicher beispielsweise wird Ihrer Lambda-Funktion ungefähr doppelt so viel Rechenleistung zugewiesen als bei Anforderung von 128 MB Arbeitsspeicher, und halb so viel Rechenleistung als bei Auswahl von 512 MB Arbeitsspeicher. Sie können für Ihren Arbeitsspeicher in 64 MB-Schritten eine Größe zwischen 128 MB und 3 GB festlegen.

F: Wie lange kann das Ausführen einer AWS Lambda-Funktion dauern?

Alle Aufrufe von AWS Lambda müssen ihre Ausführung innerhalb von 300 Sekunden beendet haben. Das Standard-Timeout verträgt 3 Sekunden, Sie können für das Timeout jedoch jeden Wert zwischen 1 und 300 Sekunden festlegen.

F: Wie wird mir die Nutzung von AWS Lambda-Funktionen in Rechnung gestellt?

Bei AWS Lambda wird nur die tatsächliche Nutzung berechnet. Einzelheiten finden Sie auf der Seite mit der Preisübersicht zu AWS Lambda.

F: Unterstützt AWS Lambda Versioning?

Ja. Standardmäßig hat jede AWS Lambda-Funktion eine einzige, aktuelle Code-Version. Clients Ihrer Lambda-Funktion können eine spezifische Version aufrufen oder die letzte Implementierung erhalten. Bitte lesen Sie die Dokumentation über Versionsverwaltung von Lambda-Funktionen.

F: Wie lange dauert es nach dem Hochladen meines Codes, bis meine AWS Lambda-Funktion bereit ist?

Die Bereitstellungszeiten können je nach Codegröße variieren, AWS Lambda-Funktionen sind jedoch normalerweise innerhalb von Sekunden nach dem Hochladen bereit.

F: Kann ich meine eigene Version einer unterstützten Bibliothek verwenden?

Ja. Sie können Ihre eigene Bibliothek (einschließlich des AWS SDK) einbeziehen, um eine andere Version als die von AWS Lambda bereitgestellte Standardversion zu verwenden.

Nutzung von AWS Lambda zur Verarbeitung von AWS-Ereignissen

F: Was ist eine Ereignisquelle?

Eine Ereignisquelle ist eine AWS-Service- oder von Entwicklern erstellte Anwendung, die Ereignisse produziert, die die Ausführung einer AWS Lambda-Funktion auslösen. Manche Services veröffentlichen diese Ereignisse für Lambda, indem sie die Cloud-Funktion direkt aufrufen (beispielsweise Amazon S3). Lambda kann auch Ressourcen in anderen Services abrufen, die keine Ereignisse für Lambda veröffentlichen. Lambda kann beispielsweise Aufzeichnungen aus einem Kinesis-Stream abrufen und für jede Nachricht im Stream eine Lambda-Funktion ausführen.

Viele andere Services, etwa AWS CloudTrail, können als Ereignisquellen fungieren, einfach indem sie auf Amazon S3 protokollieren und S3-Bucket-Benachrichtigungen für das Auslösen von AWS Lambda-Funktionen verwenden.

F: Welche Ereignisquellen können mit AWS Lambda verwendet werden?

Eine vollständige Liste von Ereignisquellen finden Sie in unserer Dokumentation.

F: Wie werden Ereignisse in AWS Lambda dargestellt?

Ereignisse werden als Ereignis-Eingabeparameter an eine Lambda-Funktion weitergeleitet. Bei Ereignisquellen, bei denen Ereignisse in Gruppen eintreten, beispielsweise bei Amazon Kinesis and Amazon DynamoDB Streams, kann der Ereignisparameter mehrere Ereignisse in einem einzelnen Aufruf enthalten, abhängig von der angeforderten Gruppengröße. UnterAmazon S3-Ereignisbenachrichtigungen konfigurieren finden Sie weitere Informationen über Amazon S3-Ereignisbenachrichtigungen. Weitere Informationen über Amazon DynamoDB Streams finden Sie im Entwicklerhandbuch zu DynamoDB Stream. Weitere Informationen über den Aufruf von Lambda-Funktionen mit Amazon SNS finden Sie im Entwicklerhandbuch zu Amazon SNS. Weitere Informationen zu Amazon Cognito-Ereignissen finden Sie unter Amazon Cognito. Weitere Informationen über AWS CloudTrail-Protokolle und die Prüfung von API-Aufrufen in AWS-Services finden Sie unter AWS CloudTrail.

F: Wie gehe ich vor, damit eine AWS Lambda-Funktion auf Änderungen in einem Amazon S3-Bucket reagiert?

In der AWS Lambda-Konsole können Sie eine Funktion auswählen und ihr Benachrichtigungen aus einem Amazon S3-Bucket zuordnen. Alternativ können Sie die Amazon S3-Konsole verwenden und die Bucket-Benachrichtigungen konfigurieren, die an Ihre Lambda-Funktion gesendet werden sollen. Dieselbe Funktionalität ist auch über AWS SDK und die Befehlszeile verfügbar.

F: Wie gehe ich vor, damit eine AWS Lambda-Funktion auf Aktualisierungen in einer Amazon DynamoDB-Tabelle reagiert?

Sie können eine Lambda-Funktion auf DynamoDB-Tabellen-Updates auslösen, indem Sie den der Tabelle zugeordneten DynamoDB-Stream für Ihre Lambda-Funktion abonnieren. Sie können einem DynamoDB-Stream über die Amazon DynamoDB-Konsole, die AWS Lambda-Konsole oder die registerEventSource-API eine Lambda-Funktion zuordnen.

F: Wie kann ich eine AWS Lambda-Funktion verwenden, um Datensätze in einem Amazon Kinesis-Stream zu verarbeiten?

Auf der AWS Lambda-Konsole können Sie eine Lambda-Funktion wählen und sie mit einem Amazon Kinesis-Stream verknüpfen, der im Eigentum desselben Kontos ist. Dieselbe Funktionalität ist auch über AWS SDK und die Befehlszeile verfügbar.

F: Wie verarbeitet AWS Lambda Daten aus Amazon Kinesis-Streams und aus Amazon DynamoDB-Streams?

Die an Ihre AWS Lambda-Funktion gesendeten Datensätze aus Amazon Kinesis- und DynamoDB-Streams werden nach Shards streng serialisiert. Wenn Sie also zwei Datensätze in demselben Shard ablegen, sorgt Lambda dafür, dass Ihre Lambda-Funktion korrekt beim ersten Datensatz aufgerufen wird, bevor sie beim zweiten Datensatz aufgerufen wird. Tritt beim Aufruf für einen Datensatz eine Zeitüberschreitung, Drosselung oder ein anderer Fehler auf, versucht Lambda den Vorgang so oft zu wiederholen, bis er korrekt ausgeführt wird (oder bis der Datensatz nach 24 Stunden abläuft), bevor die Funktion zum zweiten Datensatz fortschreitet. Die Anordnung von Datensätzen über verschiedene Shards hinweg wird nicht gewährleistet, und die Verarbeitung der einzelnen Shards erfolgt parallel.

F: Wie kann ich eine AWS Lambda-Funktion verwenden, um auf Benachrichtigungen zu antworten, die vom Amazon Simple Notification Service (SNS) gesendet wurde?

In der AWS Lambda-Konsole können Sie eine Lambda-Funktion auswählen und sie mit einem Amazon SNS-Thema verknüpfen. Dieselbe Funktionalität ist auch über AWS SDK und die Befehlszeile verfügbar.

F: Wie kann ich eine AWS Lambda-Funktion verwenden, um auf E-Mails zu antworten, die vom Amazon Simple Email Service (SES) gesendet wurden?

Von der Amazon SES-Konsole aus können Sie Ihre Empfangsregel einrichten, damit Amazon SES Ihre Nachrichten an eine AWS Lambda-Funktion liefert. Derselbe Funktionsumfang ist auch über AWS SDK und CLI verfügbar.

F: Wie kann ich eine AWS Lambda-Funktion verwenden, um auf Amazon CloudWatch-Alarme zu reagieren?

Konfigurieren Sie den Alarm zuerst so, dass er Amazon SNS-Benachrichtigungen versendet. Wählen Sie dan in der AWS Lambda-Konsole eine Lambda-Funktion und verknüpfen Sie sie mit einem Amazon SNS-Thema. Nähere Informationen zum Einrichten von Amazon CloudWatch-Alarmen finden Sie im Amazon CloudWatch-Entwicklerhandbuch.

F: Wie kann ich eine Lambda-Funktion verwenden, um auf Änderungen bei Benutzer- oder Gerätedaten, die von Amazon Cognito verwaltet werden, zu reagieren?

In der AWS Lambda-Konsole können Sie eine Funktion auswählen, die ausgelöst wird, wenn ein Datensatz, der mit einem Identitäten-Pool von Amazon Cognito verknüpft ist, synchronisiert wird. Dieselbe Funktionalität ist auch über AWS SDK und die Befehlszeile verfügbar. Unter Amazon Cognito finden Sie weitere Informationen zum Verwenden von Amazon Cognito für das Freigeben und Synchronisieren von Daten auf Geräten der Benutzer.

F: Wie kann meine Anwendung direkt eine AWS Lambda-Funktion auslösen?

Sie können eine Lambda-Funktion mittels eines benutzerdefinierten Ereignisses über die invoke-API von Lambda aufrufen. Die Funktion kann nur vom Eigentümer der Funktion oder von einem anderen AWS-Konto mit einer Genehmigung des Eigentümers aufgerufen werden. Weitere Informationen finden Sie im Lambda-Entwicklerhandbuch.

F: Welche Latenz hat der Aufruf einer AWS Lambda-Funktion bei einem Ereignis?

AWS Lambda ist so konzipiert, dass es Ereignisse in Millisekunden verarbeitet. Gleich nachdem eine Lambda-Funktion erstellt oder aktualisiert wurde, und wenn sie in letzter Zeit nicht verwendet wurde, ist die Latenz größer.

F: Wie erstelle ich ein Mobil-Backend mit AWS Lambda?

Laden Sie den Code hoch, den AWS Lambda ausführen soll, und rufen Sie ihn dann aus Ihrer mobilen App unter Verwendung des AWS Lambda SDK auf, das im AWS Mobile SDK enthalten ist. Sie können sowohl direkte (synchrone) Aufrufe zum Abrufen oder Prüfen von Daten machen als auch asynchrone Aufrufe. Sie können über Amazon API Gateway auch eine benutzerdefinierte API festlegen und Ihre Lambda-Funktionen über jeden mit REST kompatiblen Client aufrufen. Weitere Informationen zu AWS Mobile SDK finden Sie auf der Seite AWS Mobile SDK. Weitere Informationen zu Amazon API Gateway finden Sie auf der Seite Amazon API Gateway.

F: Wie rufe ich eine AWS Lambda-Funktion über HTTPS ab?

Sie können eine Lambda-Funktion über HTTPS abrufen, indem Sie mit Amazon API Gateway eine benutzerdefineirte RESTful API definieren. So erhalten Sie einen Endpunkt für Ihre Funktion, der REST-Aufrufe wie GET, PUT und POST beantworten kann. Erfahren Sie mehr über AWS Lambda mit Amazon API Gateway.

F: Wie kann meine AWS Lambda-Funktion ihr Verhalten gegenüber dem Gerät und der App anpassen, von denen die Anforderung kommt?

Wenn AWS Lambda-Funktionen über das AWS Mobile SDK aufgerufen werden, erhalten sie über das "context"-Objekt automatisch Einblick in das Gerät und die Anwendung, von denen der Aufruf stammt.

F: Wie kann meine AWS Lambda-Funktion ihr Verhalten aufgrund der Identität des Benutzers einer Anwendung personalisieren?

Wenn Ihre App Amazon Cognito-Identitäten verwendet, können Benutzer sich authentifizieren, indem sie einen öffentlichen Anmeldungsanbieter wie Amazon, Facebook, Google oder einen anderen mit OpenID Connect kompatiblen Service verwenden. Die Benutzeridentität wird Ihrer Lambda-Funktion dann automatisch und sicher in Form einer Amazon Cognito-ID präsentiert und erlaubt es der Funktion, aus Amazon Cognito auf Benutzerdaten zuzugreifen oder die ID als Schlüssel zum Speichern und Abrufen von Daten aus Amazon DynamoDB oder anderen Web-Services zu verwenden.

F: Wie erstelle ich eine Alexa Skill mit AWS Lambda?

AWS Lambda ist in das Alexa Skills Kit integriert, eine Sammlung von Selbstbedienungs-APIs, Tools, Dokumentationen und Codebeispielen, die Ihnen die Erstellung von Funktionen mit Sprachsteuerung (sogenannte "Skills") für Alexa erleichtern. Sie laden einfach den Lambda-Funktionscode für die neue Alexa-Skill hoch, die Sie erstellen möchten, und AWS Lambda übernimmt den Rest. Der Code wird als Antwort auf Interaktionen mit Alexa-Sprachsteuerung ausgeführt und die Computerressourcen werden automatisch für Sie verwaltet. Weitere Informationen finden Sie in der Alexa Skills Kit-Dokumentation.

F: Was geschieht, wenn meine Funktion ausfällt, während Sie ein Ereignis verarbeitet?

Bei Amazon S3-Bucket-Benachrichtigungen und benutzerdefinierten Ereignissen versucht AWS Lambda bei einer Fehlerbedingung in Ihrem Code, oder wenn Sie eine Service- oder Ressourcenbeschränkung überschreiten, dreimal, Ihre Funktion auszuführen. Bei bestellten Ereignisquellen, die AWS Lambda für Sie abruft – etwa Amazon DynamoDB Streams und Amazon Kinesis Streams –, versucht Lambda bei einem Entwickler-Codefehler so lange die Ausführung, bis die Daten ablaufen. Sie können den Fortschritt über die Konsolen von Amazon Kinesis und Amazon DynamoDB, sowie die Amazon CloudWatch-Metriken überwachen, die AWS Lambda für Ihre Funktion erstellt. Sie können auch auf Fehlerraten oder auf der Ausführungsdrosselung basierende Amazon CloudWatch-Warnungen erstellen.

Anwendungserstellung mit AWS Lambda

F: Was ist eine serverlose Anwendung?

Lambda-basierte Anwendungen (die auch als serverlose Anwendungen bezeichnet werden) bestehen aus Funktionen, die durch Ereignisse ausgelöst werden. Eine typische serverlose Anwendung besteht aus einer oder mehreren Funktionen, deren Auslösung durch Ereignisse wie Objekt-Uploads in Amazon S3, Amazon SNS-Benachrichtigungen oder API-Aktionen erfolgt. Die Funktionen können eigenständig verwendet werden oder andere Ressourcen wie DynamoDB-Tabellen oder Amazon S3-Buckets nutzen. Die grundlegendeste serverlose Anwendung ist einfach eine Funktion.

F: Wie kann ich serverlose Anwendungen bereitstellen und verwalten?

Zum Bereitstellen und Verwalten Ihrer serverlosen Anwendungen können Sie das AWS Serverless Application Model (AWS SAM) verwenden. AWS SAM ist eine Spezifikation, welche die Regeln für serverlose Anwendungen in AWS vorschreibt. Diese Spezifikation ist auf die aktuell von AWS CloudFormation verwendete Syntax ausgerichtet und wird in AWS CloudFormation nativ als ein Satz von Ressourcentypen unterstützt (die als „serverlose Ressourcen“ bezeichnet werden). Diese Ressourcen erleichtern AWS-Kunden die Verwendung von CloudFormation, um serverlose Anwendungen mithilfe von bestehenden CloudFormation-APIs zu konfigurieren und bereitzustellen.

F: Wie finde ich bestehende serverlose Anwendungen, die von der AWS-Community entwickelt wurden?

Mit AWS Serverless Application Repository können Sie aus verschiedenen serverlosen Anwendungen auswählen, die von Entwicklern, Unternehmen und Partnern in der AWS-Community veröffentlicht wurden. Wenn Sie die gewünschte Anwendung gefunden haben, können Sie sie direkt in der Lambda-Konsole konfigurieren und bereitstellen.

F: Wie automatisiere ich die Bereitstellung einer serverlosen Anwendung?

Der Veröffentlichungsprozess einer serverlosen Anwendung wird mit AWS CodePipeline und AWS CodeDeploy automatisiert. CodePipeline ist ein Continuous Delivery-Service, mit dem Sie die verschiedenen Phasen der Veröffentlichung einer serverlosen Anwendung modellieren, visuell darstellen und automatisieren können. CodeDeploy ist eine Automatisierungs-Engine zur Bereitstellung Ihrer Anwendungen, die auf Lambda basieren. Mit CodeDeploy können Sie Bereitstellungen nach bewährten Methoden planen, etwa lineare Bereitstellungen und solche für einzelne Nutzer- oder Servergruppen. Außerdem können Sie die erforderlichen Schutzmechanismen einrichten, um zu bestätigen, dass der neu bereitgestellte Code sicher, stabil und bereit für die Produktion ist.

Weitere Informationen zu serverlosem CI/CD finden Sie in unserer Dokumentation.

F: Wie erstelle ich eine serverlose Anwendung?

Rufen Sie zunächst die AWS Lambda-Konsole auf, und laden Sie unsere Entwürfe herunter. Die heruntergeladene Datei enthält eine AWS SAM-Datei mit Definitionen der in Ihrer Anwendung enthaltenen AWS-Ressourcen und eine ZIP-Datei mit dem Code Ihrer Funktion). Sie können die soeben heruntergeladene serverlose Anwendung anschließend mithilfe von AWS CloudFormation-Befehlen verpacken und bereitstellen. Weitere Informationen finden Sie in unserer Dokumentation.

F: Wie koordiniere ich Aufrufe zwischen mehreren AWS Lambda-Funktionen?

Sie können AWS Step Functions verwenden, um eine Serie von AWS Lambda-Funktionen in einer bestimmten Reihenfolge zu koordinieren. Dabei können Sie mehrere Lambda-Funktionen sequentiell aufrufen, sodass die Ausgabe von einer zur nächsten Funktion weitergegeben wird. Der Aufruf der Lambda-Funktionen ist auch parallel möglich, wobei Step Functions den Zustand während der Ausführungen für Sie beibehält.

F: Wie kann ich Probleme mit einer serverlosen Anwendung beheben?

Sie können die Lambda-Funktion für die Nachverfolgung mit AWS X-Ray aktivieren, indem Sie X-Ray-Berechtigungen zur Ausführungsrolle Ihrer Lambda-Funktion hinzufügen und den Nachverfolgungsmodus Ihrer Funktion auf "Active" festlegen. Wenn X-Ray für Ihre Lambda-Funktion aktiviert ist, sendet AWS Lambda Nachverfolgungsinformationen bezüglich des Aufwands des Lambda-Service, der beim Aufrufen Ihrer Funktion aufgetreten ist, an X-Ray. Auf diese Weise erhalten Sie Informationen, zum Beispiel zum Aufwand des Lambda-Service, zur Startzeit der Funktion und zur Ausführungszeit der Funktion. Außerdem können Sie das X-Ray-SDK in Ihr Lambda-Entwicklungspaket einschließen, um eigene Nachverfolgungssegmente zu erstellen, Ihre Nachverfolgungen zu kommentieren oder Nachverfolgungssegmente für Downstream-Aufrufe, die von Ihrer Lambda-Funktion aus erfolgt sind, anzuzeigen. X-Ray-SDKs sind derzeit für Node.js und Java verfügbar. Weitere Informationen finden Sie unter Problembehandlung für Lambda-basierte Anwendungen. Es gelten die Preise für AWS X-Ray.

F: Wie wird AWS SAM lizenziert?

Es handelt sich hierbei um eine Open-Source-Spezifikation unter Apache 2.0. Dies ermöglicht es Benutzern, AWS SAM mit einer gewerbefreundlichen Lizenz in Erstellungs-, Bereitstellungs-, Überwachungs- und Verwaltungstools zu integrieren. Das AWS SAM-Repository in GitHub können Sie hier aufrufen.

Lambda@Edge

F: Was ist Lambda@Edge?

Mit Lambda@Edge können Sie Code global über AWS-Standorte ausführen, ohne Server bereitstellen oder verwalten zu müssen, wobei sich die minimale Netzwerklatenz in den Reaktionszeiten für die Endbenutzer kaum bemerkbar macht. Sie laden lediglich Ihren Node.js-Code in AWS Lambda hoch und konfigurieren die Funktion, die auf Amazon CloudFront-Anforderungen hin ausgelöst werden soll (d. h., wenn ein Viewer Landungen anfordert, wenn eine Anforderung an den Ursprung weitergeleitet oder vom Ursprung zurück empfangen wird und kurz vor der Antwort an den Endbenutzer). Der Code ist dann bei Eintreffen einer Inhaltsanforderung bereit zur globalen Ausführung über alle AWS-Standorte, wobei er sich dem globalen Volumen der CloudFront-Anforderungen entsprechend skaliert. Weitere Informationen finden Sie in unserer Dokumentation.

F: Wie nutze ich Lambda@Edge?

Zur Verwendung von Lambda@Edge ist lediglich Folgendes erforderlich: Sie laden Ihren Code in AWS Lambda hoch und verknüpfen eine Funktionsversion, die als Reaktion auf Amazon CloudFront-Anforderungen ausgelöst werden soll. Ihr Code muss dabei den Einschränkungen des Lambda@Edge-Service entsprechen. Hinsichtlich des globalen Aufrufs durch CloudFront-Ereignisse unterstützt Lambda@Edge derzeit nur Node.js. Weitere Informationen finden Sie in unserer Dokumentation.

F: Wann sollte ich Lambda@Edge verwenden?

Lambda@Edge ist für latenz-kritische Anwendungsfälle mit global verteilten Endbetrachtern optimiert. Idealerweise sollten alle Informationen, die für Ihre Entscheidung erforderlich sind, am CloudFront-Edge innerhalb der Funktion und der Anforderung verfügbar sein. Das bedeutet, dass Anwendungsfälle, in denen Sie die Entscheidung treffen müssen, wie der Inhalt auf Basis von Benutzermerkmalen behandelt werden muss (z. B. am Standort, auf dem Clientgerät usw.), nun direkt in Edge in Node.js-6.10 ausgeführt und behandelt werden können, ohne an einen zentralen Server zurückgeleitet zu werden.

F: Kann ich meine bestehenden Lambda-Funktionen für den globalen Aufruf bereitstellen?

Bestehende Lambda-Funktionen aus Node.js-6.10 können Sie für den globalen Aufruf mit CloudFront-Ereignissen verknüpfen, sofern die Funktion die Service-Einschränkungen von Lambda@Edge erfüllt. Informationen zur Änderung von Funktionseigenschaften erhalten Sie hier.

F: Welche Amazon CloudFront-Ereignisse können zum Auslösen meiner Funktionen verwendet werden?

Ihre Funktionen werden automatisch als Reaktion auf die folgenden Amazon CloudFront-Ereignisse ausgelöst:

  • Viewer Request – Dieses Ereignis tritt auf, wenn ein Endbenutzer oder Gerät im Internet eine HTTP(S)-Anforderung an CloudFront richtet und die Anforderung an der Edge-Standort eintrifft, die diesem Benutzer am nächsten ist.
  • Viewer Response – Dieses Ereignis tritt ein, wenn der CloudFront-Server bei der Edge zur Antwort an den Endbenutzer oder das Gerät bereit ist, der bzw. das die Anforderung gesendet hat.
  • Origin Request – Dieses Ereignis tritt ein, wenn der CloudFront-Edge-Server das angeforderte Objekt noch nicht in seinem Cache abgelegt hat, und die Viewer-Anforderung zum Senden an Ihren Backend-Origin-Webserver bereit ist (z. B. Amazon EC2 oder Application Load Balancer oder Amazon S3).
  • Origin Response – Dieses Ereignis tritt ein, wenn der CloudFront-Server an der Edge eine Antwort von Ihrem Backend-Ursprungs-Webserver erhält.

F: Inwiefern unterscheidet sich Lambda@Edge von der Nutzung von AWS Lambda-Ressourcen hinter Amazon API Gateway?

Der Unterschied besteht darin, dass API Gateway und Lambda regionale Services darstellen. Mit Lambda@Edge und Amazon CloudFront können Sie, je nachdem, an welchem Standort sich Ihre Viewer befinden, Ihre Logik über mehrere AWS-Standorte hinweg ausführen.

Skalierbarkeit und Verfügbarkeit

F: Wie verfügbar sind AWS Lambda-Funktionen?

AWS Lambda ist für Replikation und Redundanz konzipiert, um hohe Verfügbarkeit sowohl für den Service selbst als auch für die Lambda-Funktionen, die er ausführt, zu bieten. Es gibt keine Wartungsfenster und keine geplanten Ausfallzeiten.

F: Bleiben meine AWS Lambda-Funktionen verfügbar, wenn ich meinen Code oder seine Konfiguration ändere?

Ja. Wenn Sie eine Lambda-Funktion aktualisieren, gibt es eine kurze Zeitspanne von normalerweise unter einer Minute, während der Anforderungen von der alten oder der neuen Version Ihrer Funktion ausgeführt werden können.

F: Gibt es eine Begrenzung für die Anzahl der AWS Lambda-Anforderungen, die ich gleichzeitig ausführen kann?

Nein. AWS Lambda ist für die parallele Ausführung vieler Instanzen Ihrer Funktionen konzipiert. AWS Lambda verfügt jedoch über eine standardmäßige Sicherheitsdrosselung für die Anzahl der gleichzeitigen Ausführungen pro Konto und Region. Weitere Informationen zu den Beschränkungen für die standardmäßige Sicherheitsdrosselung finden Sie hier. Sie können für einzelne AWS Lambda-Funktionen auch steuern, wie viele von ihnen gleichzeitig ausgeführt werden können. So haben Sie einen Teil der beschränkten gleichzeitigen Nutzung für kritische Funktionen übrig oder können den Traffic auf nachgeschaltete Ressourcen begrenzen.

Wenn Sie eine Anforderung zum Erhöhen der Standarddrosselung einreichen möchten, können Sie unser Support-Center besuchen, auf "Neuen Fall öffnen" klicken und eine Erhöhung der Kapazitätsgrenzen beantragen.

F: Was passiert, wenn mein Konto die Standarddrosselung für gleichzeitige Ausführungen überschreitet?

Beim Überschreiten der Drosselungsgrenze geben die synchron aufgerufenen AWS Lambda-Funktionen einen Drosselfehler (Fehlercode 429) zurück. Synchron aufgerufene Lambda-Funktionen können Verkehrsspitzen in gewissem Rahmen für 15 bis 30 Minuten absorbieren. Danach werden eingehende Ereignisse als gedrosselt zurückgewiesen. Falls die Lambda-Funktion als Reaktion auf Amazon S3-Ereignisse aufgerufen wird, können Ereignisse, die durch AWS zurückgewiesen wurden, bis zu 24 Stunden aufbewahrt und durch S3 erneut eingereicht werden. Ereignisse aus Amazon Kinesis Streams und Amazon DynamoDB-Streams werden so lange erneut versucht, bis die Lambda-Funktion erfolgreich ist oder die Zeit abläuft. Amazon Kinesis- und Amazon DynamoDB-Streams bewahren Daten bis zu 24 Stunden auf.

F: Wird die Standardgrenze pro Funktionsebene angewendet?

Nein, die Standardgrenze wird nur auf Kontoebene angewendet.

F: Was geschieht, wenn meine Lambda-Funktion während der Verarbeitung eines Ereignisses ausfällt?

Bei einem Ausfall antwortet die synchron aufgerufene Lambda-Funktion mit einer Ausnahme. Asynchron aufgerufene Lambda-Funktionen werden bei Bedarf mindestens drei Mal wiederholt. Ereignisse aus Amazon Kinesis Streams und Amazon DynamoDB Streams werden so lange erneut versucht, bis die Lambda-Funktion erfolgreich ist oder die Zeit abläuft. Die Daten von Kinesis- und DynamoDB-Streams werden mindestens 24 Stunden aufbewahrt.

F: Was passiert, wenn meine Lambda-Funktionsaufrufe die festgelegte Richtlinie überschreiten?

Für den Fall, dass die Wiederholungsrichtlinie für asynchrone Aufrufe überschritten wird, können Sie eine Warteschlange für unzustellbare Nachrichten (Dead-Letter-Queue (DLQ)) einrichten, in die das Ereignis eingereiht wird. Wenn keine DLQ konfiguriert ist, wird das Ereignis vermutlich abgelehnt. Falls ein stream-basierter Aufruf die Wiederholungsrichtlinie überschreitet, sind die Daten vermutlich abgelaufen und wurden daher bereits abgelehnt.

F: Welche Ressourcen kann ich als Dead-Letter-Queue für eine Lambda-Funktion konfigurieren?

Als Dead-Letter-Queue können Sie eine Amazon SQS-Warteschlange oder ein Amazon SNS-Thema konfigurieren.

Sicherheits- und Zugriffskontrolle

F: Wie kann ich für meine AWS Lambda-Funktion den Zugriff auf andere AWS-Ressourcen freigeben?

Sie erteilen Ihrer Lambda-Funktion mithilfe der IAM-Rolle Berechtigungen zum Zugriff auf andere Ressourcen. AWS Lambda übernimmt bei der Ausführung Ihrer Lambda-Funktion die Ausführungsrolle. Sie können also immer vollständig und sicher kontrollieren, welche AWS-Ressourcen dabei verwendet werden dürfen. Weitere Informationen zu Rollen finden Sie in Setting up AWS Lambda.

F: Wie kontrolliere ich, welche Amazon S3-Buckets welche AWS Lambda-Funktionen aufrufen können?

Wenn Sie einen Amazon S3-Bucket für das Senden von Nachrichten an eine AWS Lambda-Funktion konfigurieren, wird eine Regel zu Ressourcenrichtlinien erstellt, die Zugriff gewährt. Im Entwicklerhandbuch zu Lambda finden Sie weitere Informationen zu Ressourcenrichtlinien und Zugriffskontrollen für Lambda-Funktionen.

F: Wie kontrolliere ich, welche Amazon DynamoDB-Tabelle bzw. welchen Amazon Kinesis-Stream eine AWS Lambda-Funktion abrufen kann?

Zugriffskontrollen werden über die Rolle der Lambda-Funktion verwaltet. Die Rolle, die Sie Ihrer Lambda-Funktion zuweisen, bestimmt auch, welche Ressourcen AWS Lambda im eigenen Namen abfragen kann. Weitere Informationen finden Sie im Lambda-Entwicklerhandbuch.

F: Kann ich mit der AWS Lambda-Funktion auf Ressourcen hinter Amazon VPC zugreifen?

Ja. Sie können auf Ressourcen hinter Amazon VPC zugreifen.

F: Wie aktiviere und deaktiviere ich den VPC-Support für meine Lambda-Funktion?

Zum Aktivieren des VPC-Supports müssen Sie ein oder mehrere Subnetze in einer einzelnen VPC sowie eine Sicherheitsgruppe im Rahmen Ihrer Funktionskonfiguration festlegen. Zum Deaktivieren des VPC-Supports aktualisieren Sie die Funktionskonfiguration und legen eine leere Liste für das Subnetze und die Sicherheitsgruppe an. Sie können diese Einstellungen über die AWS APIs, die Benutzerschnittstelle (CLI) oder die AWS Lambda-Verwaltungskonsole ändern.

F: Kann eine einzelne Lambda-Funktion Zugriff auf mehrere VPCs haben?

Nein. Lambda-Funktionen bieten jeweils nur Zugriff auf eine VPC. Sind mehrere Subnetze angegeben, müssen sich diese alle in derselben VPC befinden. Sie können mittels Peering eine Verbindung zu anderen VPCs herstellen.

F: Können Lambda-Funktionen in einer VPC auch auf das Internet und AWS-Service-Endpunkte zugreifen?

Lambda-Funktionen, die für den Zugriff auf Ressourcen in einer bestimmten VPC konfiguriert wurden, haben standardmäßig keinen Zugriff auf das Internet. Für den Zugriff auf externe Endpunkte müssen Sie in Ihrer VPC eine NAT erstellen, um den Datenverkehr weiterzuleiten, und die Sicherheitsgruppe so konfigurieren, dass sie den ausgehenden Datenverkehr zulässt.

AWS Lambda-Funktionen in Java

F: Wie kompiliere ich den Java-Code meiner AWS Lambda-Funktion?

Sie können Standard-Tools wie Maven oder Gradle verwenden, um Ihre Lambda-Funktion zu kompilieren. Der Kompilierungsprozess muss denselben Kompilierungsprozess nachahmen, den Sie verwenden würden, um einen Java-Code zu kompilieren, der vom AWS SDK abhängt. Führen Sie Ihr Java-Kompilierungstool mit Ihren Quelldateien aus und schließen Sie das AWS SDK 1.9 oder höher mit transitiven Anhängigkeiten in Ihren Klassenpfad ein. Weitere Details finden Sie in unserer Dokumentation.

F: Welche JVM-Umgebung verwendet Lambda für das Ausführen meiner Funktion?

Lambda stellt den Amazon Linux-Build openjdk 1.8 bereit.

AWS Lambda-Funktionen in Node.js

F: Kann ich Pakete mit AWS Lambda verwenden?

Ja. Sie können NPM-Pakete und benutzerdefinierte Pakete nutzen. Weitere Informationen finden Sie hier.

F: Kann ich in meiner AWS Lambda-Funktion andere Programme ausführen, die in Node.js geschrieben wurden?

Ja. In der in Lambda integrierten Sandbox können Sie Batch- oder Shell-Skripte, ausführbare Dateien in anderen Sprachen, Dienstprogrammroutinen und ausführbare Dateien ausführen. Weitere Informationen finden Sie hier.

F: Ist es möglich, native Module mit AWS Lambda-Funktionen zu verwenden, die in Node.js geschrieben wurden?

Ja. Der ZIP-Datei, die Sie hochladen, können sowohl statisch verknüpfte native Module als auch dynamisch verknüpfte Module hinzugefügt werden, die mit einem auf das Stammverzeichnis Ihrer Lambda-Funktion zeigenden "rpath" kompiliert werden. Weitere Informationen finden Sie hier.

F: Kann ich mit AWS Lambda Binärdateien ausführen, die in Node.js geschrieben wurden?

Ja. Sie können den Node.js-Befehl child_process verwenden, um eine Binärdatei auszuführen, die Sie in Ihre Funktion oder in eine ausführbare Datei aus Amazon Linux, die für Ihre Funktion sichtbar ist, einbezogen haben. Alternativ gibt es mehrere NPM-Pakete, die die Binärdateien in der Befehlszeile mit einem Wrapper versehen, wie z. B. node-ffmpeg. Weitere Informationen finden Sie hier.

F: Wie stelle ich AWS Lambda-Funktionscode bereit, der in Node.js geschrieben wurde?

Um eine Lambda-Funktion bereitzustellen, die in Node.js geschrieben wurde, packen Sie einfach Ihren Javascript-Code und die abhängigen Bibliotheken in eine ZIP-Datei. Sie können die ZIP-Datei aus Ihrer lokalen Umgebung hochladen oder einen Ort in Amazon S3 angeben, an dem sich die ZIP-Datei befindet. Weitere Details finden Sie in unserer Dokumentation.

AWS Lambda-Funktionen in Python

F: Kann ich Python-Pakete mit AWS Lambda verwenden?

Ja. Sie können Pip verwenden, um beliebige erforderliche Python-Pakete zu installieren.

AWS Lambda-Funktionen in C#

F: Wie kann ich eine AWS Lambda-Funktion in C# packen und bereitstellen?

Sie können eine C#-Lambda-Funktion mithilfe der Visual Studio-IDE durch Auswählen von "Publish to AWS Lambda" im Projektmappen-Explorer erstellen. Sie können aber auch den Befehl "dotnet lambda publish" in der .Net-CLI ausführen, in der der [# Lambda-CLI-Tools-Patch] installiert ist. Auf diese Weise wird eine ZIP-Datei Ihres C#-Quellcodes zusammen mit allen NuGet-Abhängigkeiten sowie eigenen veröffentlichten DLL-Assemblys erstellt und automatisch mithilfe des Laufzeitparameters "dotnetcore1.0" zu AWS Lambda hochgeladen.

Andere Themen

F: Welche Versionen von Amazon Linux, Node.js, Python, JDK, .NET Core, SDKs und sonstigen Bibliotheken unterstützt AWS Lambda?

Sie können die Liste unterstützter Versionen hier einsehen.

F: Kann ich die Version von Amazon Linux oder einer anderen Language Runtime ändern?

Nein. AWS Lambda bietet eine Betriebssystem- und Language Runtime-Version für alle Benutzer des Services.

F: Wie kann ich Aufrufe der AWS Lambda-API aufzeichnen und prüfen?

AWS Lambda wird in AWS CloudTrail integriert. AWS CloudTrail kann Protokolldateien aufzeichnen und an Ihren Amazon S3-Bucket liefern, in denen die API-Verwendung Ihres Kontos beschrieben wird.

F: Wie koordiniere ich Aufrufe zwischen mehreren Lambda-Funktionen?

Zur Koordination des Aufrufs mehrerer Lambda-Funktionen können Sie Amazon Step Functions verwenden. Der Aufruf der Lambda-Funktionen kann dabei seriell erfolgen, sodass die Ausgabe einer Funktion an die nächste weitergegeben wird, oder er kann parallel erfolgen. Weitere Informationen finden Sie in unserer Dokumentation.

Weitere Informationen zur Preisgestaltung bei AWS Lambda

Zur Seite mit den Preisen
Sind Sie startbereit?
Registrieren
Haben Sie Fragen?
Kontakt