Django на heroku с сохранением imagekit в AWS S3 идет очень медленно - PullRequest
2 голосов
/ 06 марта 2012

Мое приложение django находится на heroku (работает с gunicorn) с простой общей базой данных и изображениями, сохраняемыми в s3.Проблема в том, что если на странице больше нескольких изображений, она реагирует очень медленно (30-60 секунд).Любые советы по передовому опыту в этой ситуации?

настройки:

#AWS login details etc
from S3 import CallingFormat
AWS_CALLING_FORMAT = CallingFormat.SUBDOMAIN

Базовая модель выглядит следующим образом:

models.py

class TestModel(models.Model):
    original_image = models.ImageField(storage=s3_storage, upload_to='uploads/%Y/%m/%d')
    thumb_image = ImageSpec([resize.Fit(402)], image_field='original_image', storage=s3_storage, format='JPEG', options={'quality': 90})
    formatted_image = ImageSpec([resize.Fit(800)], image_field='original_image', storage=s3_storage, format='JPEG', options={'quality': 90})

и упрощенный вид:

views.py

def home(request):
    images = TestModel.objects.filter(published=True)
    ctxt = {}
    ctxt['image'] = images
    return render_to_response('home.html', ctxt, RequestContext(request))

Шаблон:

    {% for image in images %}
      <img src="{{ image.thumb_image.url }}" alt="">
    {% endfor %}

1 Ответ

1 голос
/ 07 июня 2012

Полагаю, это потому, что вы изменяете размеры своих изображений прямо в веб-режиме, не так ли?

Это должно быть сделано в рабочем режиме.

...