Kann eine AWS Lambda-Funktion eine andere aufrufen?
Habe ich 2 Lambda-Funktionen - eine, die produziert ein Angebot und man macht ein Angebot in einen Auftrag.
Ich würde gerne die Reihenfolge der lambda-Funktion aufrufen, die Zitat-Funktion zu regenerieren zitieren, anstatt nur erhalten Sie aus einer nicht vertrauenswürdigen client.
Ich habe überall gesucht ich denken kann - aber Sie können nicht sehen, wie ich gehen über die Verkettung oder das aufrufen der Funktionen...sicherlich vorhanden ist!
InformationsquelleAutor der Frage Silver | 2015-07-30
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich einen Weg gefunden, mit der
aws-sdk
.Finden Sie die doc hier: http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/Lambda.html
InformationsquelleAutor der Antwort Nicolas Grenié
Sollten Sie die Kette Ihrer
Lambda functions
überSNS
. Dieser Ansatz bietet eine gute Leistung, Latenz und Skalierbarkeit bei minimalem Aufwand.Ihre erste
Lambda
veröffentlicht Nachrichten an IhreSNS Topic
und die zweiteLambda
abonniert zu diesem Thema. Sobald Nachrichten in das Thema, die zweiteLambda
ausgeführt mit der Meldung, die als Eingabe parameter.Sehen Aufrufen von Lambda-Funktionen, die mit Amazon SNS-Benachrichtigungen.
Sie können auch diesen Ansatz verwenden, um Aufrufen, cross-Konto Lambda-Funktionen über SNS.
InformationsquelleAutor der Antwort kixorz
hier ist ein Beispiel-code für python,
Btw, würden Sie brauchen, um hinzuzufügen, eine Politik, wie Sie diese zu Ihrem lambda-Rolle
InformationsquelleAutor der Antwort blueskin
Ich war auf der Suche zu schneiden, die SNS, bis ich sah, dass dieser in der Lambda-client-docs (Java-version):
Also SNS hat einen offensichtlichen Vorteil: es ist asynchron. Deine lambda nicht warten, für die nachfolgenden lambda abgeschlossen.
InformationsquelleAutor der Antwort Ben Iggulden
Seit diese Frage gestellt wurde, die Amazon veröffentlicht hat, "Step" - Funktionen (https://aws.amazon.com/step-functions/).
Eines der zentralen Prinzipien, die hinter AWS Lambda ist, können Sie mehr Fokus auf business-Logik und weniger auf die Anwendung der Logik, bindet Sie alle zusammen. Schritt Funktion ermöglicht es Ihnen, zu orchestrieren komplexen Wechselwirkungen zwischen Funktionen, ohne den code zu schreiben, es zu tun.
InformationsquelleAutor der Antwort dustinnoe
Möglicherweise können Sie Gebrauch machen von der Async.js Wasserfall - siehe den unteren Teil der großen code-chunk, der in Schritt 3 in diesem Dokument ein Beispiel:
https://aws.amazon.com/blogs/compute/better-together-amazon-ecs-and-aws-lambda/
InformationsquelleAutor der Antwort Mike
Arbeitete ich mit der Antwort blueskinaber ich konnte nicht Lesen Sie die Payload-Reaktion, weil die InvocationType= "Veranstaltung" ist asyncso wechselte ich als InvocationType='RequestResponse" und jetzt funktioniert alles gut.
InformationsquelleAutor der Antwort antonio
Ich habe das gleiche problem, aber die Lambda-Funktion, die ich implementieren, fügen Sie einen Eintrag in DynamoDB, also meine Lösung verwendet DynamoDB-Trigger.
Ich den DB-aufrufen, eine Lambda-Funktion, die für jedes insert/update in die Tabelle, so dass diese trennt die Umsetzung von zwei Lambda-Funktionen.
Dokumentation ist hier:
http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Streams.Lambda.html
Hier ist eine geführte Exemplarische Vorgehensweise:
https://aws.amazon.com/blogs/aws/dynamodb-update-triggers-streams-lambda-cross-region-replication-app/
InformationsquelleAutor der Antwort Lewen
Art Kreisverkehr-Lösung, aber ich rufen Sie einfach die API-Endpunkt für meine lambda-Funktionen, wenn ich Sie brauche um die Kette. Dies ermöglicht Ihnen, zu entscheiden, während dem Programmieren wenn Sie wollen, dass Sie asynchron oder nicht.
In Fall, dass Sie nicht wollen, um das setup eine POST-Anforderung können Sie einfach setup einen einfachen GET-request mit einem paar, oder gar keine, query-string-Parameter für easy event vorbei.
-- Edit --
Finden Sie unter: https://docs.aws.amazon.com/apigateway/api-reference/making-http-requests/
und: http://docs.aws.amazon.com/lambda/latest/dg/with-on-demand-https-example.html
InformationsquelleAutor der Antwort Anselm
In java, wir können das wie folgt tun :
Hier, Nutzlast ist Ihre stringified java-Objektes, welches übergeben werden muss als Json-Objekt zu einem anderen lambda in Fall müssen Sie einige Informationen aus dem Aufruf lambda lambda genannt.
InformationsquelleAutor der Antwort Suyash
Können Sie aufrufen lambda-Funktion direkt (zumindest über Java) mit
AWSLambdaClient
wie beschrieben in der AWS' blog post.InformationsquelleAutor der Antwort Neil
Können Sie festlegen, AWS_REGION Umgebung.
InformationsquelleAutor der Antwort hojin