【发布时间】:2019-10-04 23:11:09
【问题描述】:
我有 2 个 AWS API Gateway 部署如下:
API1 --> api1.mydomain.com(后端集成 Lambda1)
API2 --> api2.mydomain.com(后端集成 Lambda2)
虽然 API1 和 API2 可以从不同的服务调用,但在某些用例中 API1 也调用 API2。
但是,到目前为止,调用是通过简单的 HTTP 客户端进行的。 意思是; Lambda1 使用 Aapche HTTP 客户端调用“api1.mydomain.com”。
问题 有没有更快的方法从 Lambda1 调用 API2 而不会影响通过 Internet 调用 API1 或 API2 的客户端? 我的理解是当Lambda1调用“api1.mydomain.com”时,它是通过跟踪公共互联网来实现的。
我的工件 API1、API2、Lambda1 和 Lambda2 都在同一个 AWS 账户和同一个 VPC\AWS 区域中。 我正在尝试查看是否可以减少调用的网络时间,其中同一区域中的工件不必进行公共互联网往返。
【问题讨论】:
-
因为听起来您的决策逻辑在 lambda 中,所以您无能为力。我建议确定强制 API1 调用 API2 的路径,然后创建 API Gateway Endpoint w/集成类型 HTTP。如果您需要对数据进行一些转换,请查看带有 api 网关的映射模板。
标签: amazon-web-services aws-lambda aws-api-gateway