Бэкэнд хранения файлов для Rails - PullRequest
1 голос
/ 16 апреля 2010

У меня есть приложение Rails, в которое я хочу добавить загрузку файлов, чтобы пользователи имели доступ к разделу «ресурсы», где они могут загружать и обмениваться (хотя и не публично) файлами любого типа. Я знаю, что мог бы создать решение, используя paperclip и S3, например, но попытаться избежать накладных расходов администратора на все, что я смотрю на интерфейсы API для drop.io и box.net. У кого-нибудь есть такой опыт? У меня есть довольно хорошее демо, работающее над drop.io, но мне было просто интересно, есть ли у кого-нибудь лучшие идеи или опыт.

Большое спасибо D

1 Ответ

1 голос
/ 17 апреля 2010

Я использую attachment_fu с бэкэндом S3. Для совершенства пользовательского интерфейса я использую загрузчик файлов YUI .

Некоторые файлы загружаются с правами на чтение для всего мира, другие - без публичного доступа для чтения. Я использую Attachement_fu для создания самозаверяющих URL-адресов, чтобы клиенты могли получить доступ к закрытым файлам S3.

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

Создание собственной библиотеки для drop.io и / или box.net

Ваша идея использования API для коммерческого сервиса интересна, но я не сталкивался с какими-либо проблемами с вышеуказанным конфигом. И цена за прямой доступ к S3 очень низкая.

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

Обратите внимание, что если у вас есть лот закачек, вы можете столкнуться с проблемой производительности, если закачки синхронизированы с потоком Rails - процесс rails загружен и ничего не может иначе, пока загрузка не будет завершена.

НТН,

Larry

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...