1

我有一个用例,我的 API 应通过 API 网关暴露给外部客户端。请求参数包括一个大文本文件 (~100MB) 和负载中的一些其他参数。在对文件中的数据进行一些处理后,我打算在响应正文中发送更新的文件。

请帮忙看看我该如何解决我的这个用例。谢谢

挑战:

API 请求的处理可能会超过 30 秒的 API 网关超时限制。请求和响应的负载超过了 10 MB 的负载限制。

4

1 回答 1

2

您很可能希望这是一个异步过程,其中您:

  • 创建一个预签名的帖子网址,用户可以在其中将他们的 100MB 文本文件直接上传到 S3
    • 可选择通知用户说“谢谢!文件准备就绪时会通知您”
  • 让 S3 事件触发 lambda 函数来处理文件中的数据,保存到 S3 中的另一个位置
  • 在转换后的文本文件上生成预签名 url
  • 将该 URL 呈现给用户以供下载

上传、转换和下载约 100MB 的文本文件可能不是您希望用户等待的同步过程。

于 2020-03-27T16:02:32.450 回答