gpt4 book ai didi

amazon-web-services - 从 Lambda@Edge 触发另一个 Lambda 函数

转载 作者:行者123 更新时间:2023-12-04 04:20:47 24 4
gpt4 key购买 nike

我想从我的 Lambda@Edge 卸载一些功能以加快响应时间。
这意味着在我的 Lambda@Edge 中触发另一个 Lambda 函数。

Lambda@Edge 将应用程序分发到所有区域,因此当发出请求时,它将在离请求者最近的区域执行应用程序。

我目前的解决方案是在所有区域上创建一个具有相同主题名称的 SNS,在 us-east-1 中使用一个 SQS 来监听所有这些 SNS 主题,并使用 Lambda 函数来监听 SQS。

但是,在每个区域上创建 SNS 维护起来非常麻烦。

关于如何在我的 Lambda@Edge 中触发另一个 Lambda 函数的任何其他建议?

谢谢!

最佳答案

在 lambda 中,您可以简单地调用另一个 lambda。我不知道您使用的是哪种语言,但这里是 Python 和 boto3 库中的一个示例,其中包含您可能希望传递给被调用的 lambda 的示例信息负载(我使用 region 和 detail-type 作为示例信息传递):

payload = {'region': <the region>, 'detail-type': 'some other detail you care about'}
lambda_client = boto3.client('lambda', account_id=<your account ID>)
lambda_client.invoke(FunctionName=<ARN of the function you want to invoke>, InvocationType='Event', Payload=json.dumps(payload))

其他语言也提供类似的选项。 Python 中此调用的更多详细信息位于 https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/lambda.html#Lambda.Client.invoke

关于amazon-web-services - 从 Lambda@Edge 触发另一个 Lambda 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59422893/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com