API Gateway流大尺寸内容作为响应

时间:2018-11-21 11:58:43

标签: amazon-web-services aws-api-gateway

有什么方法可以流经AWS API网关支持的API响应中的内容。我的内容可能很大,我想将其流式传输到请求者。目前,我看到API网关的有效负载大小限制为10Mb。

当我在EC2机器上收到请求时,我还会在运行时生成数据,并且一旦生成一些数据,我就想开始将其流式传输到请求者。

有可能吗?怎么样?

1 个答案:

答案 0 :(得分:0)

如您所见,API Gateway具有严格的限制响应大小。这是因为它是为快速和事务性用例设计的。 (API网关也不会使连接保持打开状态的时间超过30秒,因此,如果您要流式传输的文件下载时间超过此时间,也会遇到麻烦。)

在这些情况下,您可以考虑使用其他模式,例如:

  • 让您的EC2计算机将结果上传到S3,并让API Gateway返回一个预签名的url,以从S3下载响应。这样可以下载流,但必须等待EC2-> S3上传首先完成。
  • 使用Elastic Beanstalk,这样您就可以控制服务器,并能够保持连接打开所需的时间,并发送所需的数据。