API Gateway поток большого размера контента в ответ - PullRequest
0 голосов
/ 21 ноября 2018

Можно ли каким-либо образом передавать потоковое содержимое в ответе API, который поддерживается шлюзом API AWS.Мой контент может быть очень большого размера, и я хочу передать его запросчику.В настоящее время я вижу, что для шлюза API существует ограничение в 10 МБ.

Я также генерирую данные во время выполнения, когда получаю запрос на своем компьютере EC2, и как только генерируются некоторые данные, я хочу запуститьПотоковая передача на запрос.

Возможно ли это?Как?

1 Ответ

0 голосов
/ 23 ноября 2018

Как вы уже видели, API Gateway жестко ограничивает размеры ответов.Это потому, что он предназначен для быстрых и транзакционных сценариев использования.(API-шлюз также не будет поддерживать соединение открытым дольше 30 секунд, поэтому, если вы загружаете потоковый файл, для загрузки которого требуется больше времени, у вас тоже будут проблемы.)

В этих случаях выможет рассмотреть другой шаблон, например:

  • Пусть ваш компьютер EC2 загрузит результат в S3, а API Gateway вернет предварительно подписанный URL-адрес для загрузки ответа из S3.Это приведет к потоковой загрузке, но для этого потребуется дождаться завершения загрузки EC2 -> S3.
  • Используйте Elastic Beanstalk, чтобы вы могли контролировать сервер и могли поддерживать свои соединения открытыми длясколько хотите, и отправляйте столько данных, сколько хотите.
...