Скрепка, отложенное задание, S3, Heroku - дизайн для отложенной обработки важных загруженных файлов: db или s3?

Мне нужны отзывы о дизайне для загрузки и отложенной обработки файла с использованием heroku, скрепки, отложенного задания и, если необходимо, s3.Части этого обсуждались в других местах, но я нигде не нашел полного обсуждения.

Описание задачи:

  1. Загрузить файл (используя скрепку в s3 / db на heroku). Файл должен быть личным, поскольку он содержит конфиденциальные данные.
  2. Файл очереди для обработки (отложенное задание)
  3. Задание запускается в очереди
  4. Файл получен (из s3 / db), и обработка завершена
  5. Файл удален (из s3 / db)

Поскольку я использую отложенное задание, мне нужно выбрать между хранением файла в базе данных или на s3. Я предполагаю, что о хранении файла на веб-сервере не может быть и речи, поскольку я использую heroku и отложенное задание. Загрузка файлов в s3 занимает много времени. Но хранить файлы в db дороже. В идеале мы хотели бы, чтобы обработка завершилась как можно быстрее.

Какой шаблон проектирования более распространен? Хранить файлы на s3? Хранить файлы в БД? Какие-либо конкретные рекомендуемые драгоценные камни, используемые для извлечения и обработки файлов, хранящихся в s3 (aws-s3? S3?)?

5
задан user1094320 12 December 2011 в 19:28
поделиться