2012-03-06 215 views
2

我的django应用程序在heroku上运行(使用gunicorn运行),使用简单的共享数据库并将图像保存到s3。一旦页面有多个图片,问题就会变得非常缓慢(30-60秒)。有关这种情况下最佳实践的任何提示?Django在heroku上使用imagekit保存到AWS S3非常慢

设置:

#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

查看http://stackoverflow.com/questions/3866635/django-image-storage-cdn – 2012-03-12 03:18:30

回答

1

我想这是因为你调整图片的大小正好在网上测功机,是不是?

它应该在工人测功机中完成。