Длинный опрос AWS S3, чтобы проверить, существует ли пункт? - PullRequest
0 голосов
/ 06 марта 2019

Контекст здесь прост: есть лямбда (lambda1), которая асинхронно создает файл и затем загружает его на S3.

Затем другая лямбда (lambda2) получает имя файла, который скоро станет существующим, и ему нужно продолжать проверять S3, пока файл не существует.

Я не думаю, что триггеры S3 будут работать, потому что lambda2 вызывается клиентским запросом

1) Получу ли я плату за такой запрос между лямбдой и S3? Я буду опрашивать его, пока объект не существует

2) Каким другим способом я мог бы добиться этого, не требуя оплаты?

3) Какой метод я использую, чтобы проверить, существует ли файл в S3? (просто попробуйте получить его и проверить код состояния?)

Ответы [ 2 ]

1 голос
/ 07 марта 2019

Похоже, вы должны использовать триггер S3 objectCreated на Lambda.Таким образом, всякий раз, когда объект создается, он автоматически запускает вашу лямбда-функцию с метаданными файла.

См. Здесь информацию о настройке триггера события S3

0 голосов
/ 07 марта 2019

Позвольте мне убедиться, что я правильно понимаю.

  1. Клиент звонит в Lambda1. Lambda1 создает файл асинхронно и загружает на S3 вызов lambda one возвращается, как только lambda1 запустит асинхронную обработку.
  2. Клиент вызывает lambda2, чтобы извлечь файл из s3, который lambda1 собирается отправить туда.

Почему бы просто не дождаться, пока Lambda one создаст файл и вернет его клиенту? В противном случае это будет дорогой обмен файлами.

...