web-dev-qa-db-ja.com

応答してから、AWS Lambda / API Gatewayでの作業を続行しますか?

現在、AWS API Gateway-> AWSLambda関数プロキシを呼び出すWebフックがあります。 Lambdaでの処理を続行しながら、Webフックの応答性を高め、早期の返信を返したいと思います。

私は先に進み、Lambda(Node v6.10)からこの早期の応答を行いましたが、応答性が改善されたようには見えませんでした。 API Gatewayは、コールバックからの応答がすでにあるにもかかわらず、Lambdaの実行が終了するのをどういうわけか待っていますか?

もう1つのアイデアは、LambdaからSNS通知を投稿し、2番目のLambdaにリッスンして処理を続行させることですが、より簡単な方法があれば、その複雑さを回避したいと考えています。

17
ss2k

API Gatewayは現在、Lambda関数の同期呼び出し(別名InvocationType: RequestResponse)のみをサポートしているため、はい、Lambdaからの完全な応答を待機しています。

ユースケースをサポートするために、SNSまたはKinesis、SQSなどの別の中間AWSサービスを使用できます。ただし、Lambdaのみでそれを行うこともできます。最初のLambda関数がInvocationType: 'Event'と非同期に2番目のLambda関数をトリガーするようにすると、希望する効果が得られます。

詳細については、この投稿を参照してください: https://stackoverflow.com/a/31745774/5705481

16
Lorenzo de Lara