无服务器框架-Lambda无需通过API网关即可调用另一个lambda

时间:2019-03-29 16:48:48

标签: python amazon-web-services aws-lambda serverless-framework

我正在构建以下体系结构:用户向API网关发布一个字符串,该字符串依次调用Lambda函数-使用该字符串作为输入。此Lambda函数将字符串写入DynamoDB。之后,此Lambda函数调用另一个Lambda函数,将输入到DynamoDB中的项的ID作为输入传递,并返回200状态代码。

要调用第二个Lambda函数,请使用:

bar.getValue()

如何为第二个Lambda配置serverless.yml,以使其不使用API​​网关?我不想使用API​​网关,因为它限制了Lambda在30秒内完成操作。

例如,要使用API​​网关,我只需要这样做:

payload = {"id":item['id']}
invoke_lambda = lambda_client.invoke(FunctionName="process",
                                     InvocationType="Event",
                                     Payload=json.dumps(payload))

有什么替代方法?

1 个答案:

答案 0 :(得分:1)

只要您的第二个Lambda函数没有连接到API网关,它就不会受到任何限制。

因此,您不能简单地在第二个Lambda定义中包括“事件”属性(这是一个可选参数)