Множественные загрузки на Amazon S3 из Ruby on Rails - какую систему фоновой обработки использовать?

StackOverflow https://stackoverflow.com/questions/1107127

Вопрос

Я разрабатываю приложение Ruby on Rails, которое должно позволять пользователю одновременно загружать 16 высококачественных изображений одновременно.

Часто это означает где-то около 10-20 мегабайт (иногда больше), но именно количество подключений становится наиболее актуальной проблемой.

Изображения отправляются на Amazon S3 из Paperclip, который, к сожалению, открывает и закрывает новое соединение для каждого из 16 файлов.Излишне говорить, что мне нужно перевести систему на работу в фоновом режиме, чтобы мой веб-сервер не зависал, как это уже происходит, без трафика.

Мой вопрос в том, есть ли среди всех систем на базе Rails, которые можно использовать для фоновых заданий (Starling, BackgroundRb, Spawn и т.д.), есть ли такая, которая подходит для этого сценария лучше, чем другие (в любом случае, я новичок в создании фоновой системы, поэтому все доступные системы для меня одинаково новы)?

Это было полезно?

Решение

Нет недостатка в плагинах rails для выполнения асинхронной обработки, и в основном все они работают нормально.Лично мне нравится Отложенное заданиеэто лучший api.

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

Другие советы

Это могло бы помочь!

http://aaronvb.com/blog/2009/7/19/paperclip-amazon-s3-background-upload-using-starling-and-workling

Редактировать:

Невозможно отправлять файлы в фоновом режиме с помощью обычной многостраничной html-формы.Они должны быть выполнены с помощью этого запроса.Если вы ищете способ обойти это, вы можете попробовать SWFUpload, а затем, как только это будет сделано, использовать фоновый процесс для обработки загрузок Amazon S3.

это также хороший опросный пост в блоге http://4loc.wordpress.com/2010/03/10/background-jobs-in-ruby-on-rails/

Мне нравится swfupload, мы используем его в некоторых приложениях S3, которые мы написали.Это оказалось очень быстрым и стабильным.Вы можете запускать действия через Ajax после загрузки и т.д.… У нас была тонна загрузок, прошедших через это с 0 сбоями.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top