https://teratail.com/questions/318095
の質問の続きなのですが、非同期(同期でもいいのですが)で呼び出された関数から大容量のS3ファイルをダウンロードしたいです。
関数1.py
import json import boto3 def lambda_handler(event, context): Payload = json.dumps(event) response = boto3.client('lambda').invoke( FunctionName='関数2', InvocationType='requestResponse', Payload=Payload ) return { 'statusCode': 202, 'body': json.dumps('Hello from Lambda!') }
関数2.py
import json import boto3 def lambda_handler(event, context): result = 大容量ファイル Payload = json.dumps(event) response = boto3.client('lambda').invoke( FunctionName='関数3', InvocationType='Event', Payload=Payload ) return { 'statusCode': 202, 'body': 'request accepted.' + result.name }
関数3.py
ポーリングして、準備ができたら、大容量ファイルをresponseで返す
ファイルの準備ができた関数2の大容量ファイルを、関数3でポーリングしても、結果の大容量ファイルをダウンロードする時点でAPI Gatewayの29秒制限に引っかかってしまいます。
ご知見のあります方、よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。