【问题标题】:Invoke AWS Lambda across regions using step functions使用步进函数跨区域调用 AWS Lambda
【发布时间】:2018-12-13 19:53:23
【问题描述】:

各位,

我有一个连接多个 Lambda 的 Step Function 管道。 Step Function 使用 AWS API Gateway 启动。所有上述项目都在同一地区。 但是,根据客户端 IP 来源,我想在不同区域使用一个 lambda 阶跃函数。我做了一些研究,但与阶跃函数区域相比,似乎无法在不同的区域调用 lambda。

所以基本上这意味着我必须为我想使用的每个区域创建不同的 API 网关入口点和不同的 Step Function 管道,不同的 Lambda 对吗?我使用的 S3 存储有什么后果吗?

【问题讨论】:

    标签: amazon-web-services aws-lambda aws-api-gateway aws-step-functions


    【解决方案1】:

    我知道我已经为时已晚,但还是提出了我的想法。 也许使用SQS?将事件放入其他区域的 SQS 并添加 lambda 触发器。

    【讨论】:

    • 欢迎来到 StackOverflow!为了使这个答案更有效,添加一些代码,也许还有一些文档链接
    【解决方案2】:

    如果 Step Functions 不支持跨区域 Lambda(而且似乎不支持),我的想法是在与 Step Function 相同的区域和 proxy-lambda 调用中使用“proxy-lambda”跨区域 lambda。这并不理想,您将不得不处理传递,并且您将在 lambda 的持续时间内支付两次费用(1x 代理 1x 实际 lambda),但这似乎比在所有区域中拥有所有元素要容易得多。

    【讨论】:

    • 我喜欢这个想法,这为我节省了很多时间来准备所有其他组件。但是我将如何从代理 lambda 调用另一个 lambda?我正在使用 Java 进行开发。
    • 您可以使用适用于 Java 的 AWS 开发工具包来调用 Lambda。如果需要,您甚至可以使用资源策略跨账户执行此操作,但在不需要的同一账户内。
    • 我认为您的评论是前进的方向,但是我遇到了一些我在这里描述的问题:stackoverflow.com/questions/53782781/…
    猜你喜欢
    • 2018-06-23
    • 2016-05-02
    • 2019-10-27
    • 2019-10-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-31
    • 2016-09-18
    • 1970-01-01
    相关资源
    最近更新 更多