Sie möchten eine AWS Lambda-Funktion lokal testen, die durch einen S3-Objekt-Upload ausgelöst wird, bevor Sie sie in der Produktion bereitstellen. Welcher Ansatz erfordert den geringsten Betriebsaufwand, um dies zu erreichen?
Wählen Sie eine Antwort
Tippen Sie auf eine Option, um Ihre Antwort zu überprüfen.
Richtige Antwort: Starten Sie einen lokalen Lambda-Endpunkt mit sam local start-lambda. Erzeugen Sie ein S3 put-Ereignis-JSON mit sam local generate-event s3 put. Rufen Sie die Funktion lokal mit sam local invoke und dem generierten JSON auf..
Warum dies die Antwort ist
Die Verwendung von sam local ist der Ansatz mit dem geringsten Betriebsaufwand, da er speziell für die lokale Entwicklung und das Testen von Lambda-Funktionen und serverlosen Anwendungen entwickelt wurde. sam local start-lambda emuliert die Lambda-Laufzeitumgebung lokal, und sam local generate-event s3 put erstellt ein realistisches S3-Ereignis-JSON, das genau dem entspricht, was Lambda von S3 erwarten würde. Schließlich ermöglicht sam local invoke das Ausführen der Funktion mit diesem simulierten Ereignis. Die anderen Optionen sind weniger effizient oder nicht praktikabel: Das Hochladen eines Objekts in S3 über die AWS CLI würde die Funktion in der Cloud auslösen, nicht lokal, was den Zweck des lokalen Testens verfehlt. Das manuelle Erstellen einer JSON-Beispieldatei und die Verwendung von aws lambda invoke ist umständlicher und fehleranfälliger, da man das genaue S3-Ereignisformat kennen muss. Außerdem würde aws lambda invoke die Funktion in der Cloud aufrufen, nicht lokal. Das Erstellen eines Testereignisses in der AWS Management Console würde ebenfalls die Funktion in der Cloud auslösen und nicht lokal.
Bestehen Sie Ihre Prüfung – ohne endlose Antwortsuche
Erhalten Sie jede verifizierte Frage und Erklärung für diese Prüfung an einem Ort und sparen Sie Stunden der Vorbereitung. Über 1.000 Zertifizierungen · Über 20 Sprachen · Kostenloser Start.
Bestehen Sie Ihre Prüfung schneller → Keine Karte erforderlich