【问题标题】:Python3 AWS Lambda - Making a post request to a domain that requires a VPNPython3 AWS Lambda - 向需要 VPN 的域发出发布请求
【发布时间】:2020-04-20 08:26:09
【问题描述】:

我正在编写一个 python3 AWS Lambda 函数,我需要从这个 lambda 向 Web 应用程序发出 POST 请求。此 Web 应用程序位于需要 VPN 才能访问的域下。因此,lambda 无法发出 POST 请求 - 它只会永远加载,直到超时。如果我通过邮递员而不是 lambda 向网络应用程序发出 POST 请求,而我连接到 VPN,它会在不到一秒的时间内工作。但是,我需要这个 lambda,因为每隔几周,它就会运行一次以从 s3 存储桶中获取数据。

我不使用 API 网关(这将是理想的选择)的原因是由于 29 秒的时间限制。 Lambda 可以运行超过 29 秒,我至少需要几分钟才能运行它,因为它需要遍历 S3 存储桶中的几乎所有文件。

非常感谢您对此提出建议。提前致谢。

【问题讨论】:

  • 我认为在主题中将其称为 AWS lambda 是值得的。 Lamba 也可以表示 python 中的匿名函数。
  • 您能否编辑您的问题以提供有关您的架构的更多信息?例如,这个 Web 应用程序托管在哪里(在 AWS 上)?你说 POST 只需要一秒钟,但你说 Lambda 可能需要超过 29 秒。更重要的是,从业务角度来看,您真正想要实现 是什么?也就是说,你能用结果而不是让它运行的部分来描述它吗?

标签: python amazon-web-services post amazon-s3 aws-lambda


【解决方案1】:

您可以创建 VPC,设置与目标站点的 VPN 连接,在 VPC 的路由表中设置路由,然后在该 VPC 中启动 Lambda 函数。

实施将取决于您的网络架构,但这是一个很好的起点:https://docs.aws.amazon.com/vpc/latest/userguide/vpn-connections.html

【讨论】:

    猜你喜欢
    • 2019-09-30
    • 1970-01-01
    • 1970-01-01
    • 2019-03-31
    • 2019-04-09
    • 2019-06-05
    • 2017-02-18
    • 1970-01-01
    • 2019-06-08
    相关资源
    最近更新 更多