У меня есть веб-приложение, в котором пользователи могут загружать аватар до 700 КБ. Это единственная часть приложения, связанная с загрузкой изображений (поэтому я не буду иметь дело с исключительно большой нагрузкой). Мне было интересно, как лучше всего поступить по этому поводу. В настоящее время я использую Paperclip и не хочу хранить все изображения на Amazon S3.
Вариант 1. Пользователь загружает изображение на мой веб-сервер. Изображение обрабатывается асинхронно с использованием отложенного задания, а затем загружается в s3. Затем изображение удаляется с моего веб-сервера.
Вариант 2. Пользователь загружает изображение непосредственно в s3. Фоновый процесс на моем веб-сервере загружает изображение, обрабатывает его и загружает вновь созданные эскизы в s3.
Вариант 1 в целом использует меньшую полосу пропускания. Вариант 2, похоже, экономит моему приложению ресурсы загрузки изображения непосредственно в него.
Прав ли я в этих предположениях? Какой вариант самый быстрый и самый ресурсоемкий? Или есть другой способ сделать это?
Кроме того, мне было интересно, обрабатывают ли изображения такие сайты, как Twitter, FB и Posterous, асинхронно. Всякий раз, когда я загружаю фотографию профиля в Twitter или изображения на FB и Posterous, они обрабатываются мгновенно.
Спасибо!
Тим