Я использую attachment_fu и RMagick загрузить/изменить размер изображения на приложение рельсы. В настоящее время я использую локальную файловую систему в качестве хранилища, но у меня есть план использования AWS S3 для работы. В любом случае мне очень интересно узнать, что переживает другой народ в использовании S3, а также у меня есть один большой вопрос для вас. В моем приложении, когда пользователь загружает изображение, я изменяю его размер до 5 разных размеров и сохраняю их вместе с исходными изображениями. (В общей сложности 6 изображений) на основе размеров эскизов provied в модели:Рассчитайте размеры миниатюр с RMagick
:thumbnails => {
"thumb" => "120x80",
"extra_small"=>"480x320",
"small"=>"640x480",
"medium" => "800x533",
"large"=>"2738x1825",
"extra_large" => "3464x2309"
Наконец я получаю:
- image_foo.jpg (Original Image)
- image_foo_thumb.jpg
- image_foo_extra_small.jpg
- image_foo_small.jpg
- image_foo_medium.jpg
- image_foo_large.jpg
- image_foo_extra_large.jpg
Причина, почему я изменить размер изображения эти мне нужно фактические размеры каждого изображения должны быть сохранены в базе данных. Но на самом деле даже я указал размеры для эскизов, я не получаю точные размеры. В любом случае его ОК, так как размер рассчитывается на основе соотношения сторон.
Но я действительно не люблю тратить пространство на сервере, если могу рассчитать размеры миниатюр, не сохраняя их в файловой системе. Другими словами, мне нужно только сохранить исходный файл, а не миниатюры, но все же мне нужно получить размеры эскизов. Можно ли получить фактические размеры миниатюр без их создания в RMagick?
S3 действительно довольно дешево, и JPG, о которых мы говорим, должны быть в диапазоне KB, а не в MB или GB. Если вы обеспокоены, как упоминает амурманн, выбор подмножества требуемых размеров будет работать очень хорошо - позвольте браузеру изменять размер до требуемых размеров пикселей. –
Спасибо, ребята. Это приложение для изображений для фотографов, поэтому большинство изображений будут приветственными изображениями. Я понимаю, что S3 - лучшее решение для этого, и я счастлив придерживаться этого. Сначала я думал хранить только исходное изображение на S3, а также генерировать и загружать обновленную версию изображений для каждого запроса на использование. Но это будет потреблять больше памяти на сервере, поскольку я использую ImageMagick. Как вы полагаете, лучше всего изменить их все сразу, а затем сохранить в S3. – randika